OpenBIOS wikidb https://openfirmware.info/Welcome_to_OpenBIOS MediaWiki 1.40.0 first-letter Media Special Talk User User talk OpenBIOS OpenBIOS talk File File talk MediaWiki MediaWiki talk Template Template talk Help Help talk Category Category talk Welcome to OpenBIOS 0 2 2 2006-10-05T21:34:10Z MediaWiki default 0 wikitext text/x-wiki <big>'''MediaWiki has been successfully installed.'''</big> Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software. == Getting started == * [http://www.mediawiki.org/wiki/Help:Configuration_settings Configuration settings list] * [http://www.mediawiki.org/wiki/Help:FAQ MediaWiki FAQ] * [http://mail.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list] 928e1deea259c70afc3513c66f29f3fcd740d8bf 3 2 2006-10-05T22:29:09Z WikiSysop 1 [[Main Page]] moved to [[Welcome to OpenBIOS]] wikitext text/x-wiki <big>'''MediaWiki has been successfully installed.'''</big> Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software. == Getting started == * [http://www.mediawiki.org/wiki/Help:Configuration_settings Configuration settings list] * [http://www.mediawiki.org/wiki/Help:FAQ MediaWiki FAQ] * [http://mail.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list] 928e1deea259c70afc3513c66f29f3fcd740d8bf 4 3 2006-10-05T22:30:38Z WikiSysop 1 /* Getting started */ wikitext text/x-wiki <big>'''MediaWiki has been successfully installed.'''</big> Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software. b9fc4428e0354a8f851a29a336cfc85d5cc42ebc 5 4 2006-10-05T22:31:10Z WikiSysop 1 wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. a54398666e23503c84fecb0e9683126242b3ff18 6 5 2006-10-05T23:04:53Z Stepan 2 wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. = News = New web page = Progress = OpenBIOS is progressing quickly. See the development download page or the progress page for the latest overview information on how complete OpenBIOS is now. = Contact = The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the mailinglist page = Project Statement = Our project statement contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. = Credits = Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing credits page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. 2df40efee837bcd49e122582c03babd1000ea59b 7 6 2006-10-05T23:05:38Z Stepan 2 wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == New web page == Progress == OpenBIOS is progressing quickly. See the development download page or the progress page for the latest overview information on how complete OpenBIOS is now. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the mailinglist page == Project Statement == Our project statement contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing credits page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. 3e3ee5dc56dc4d3a85701425aca58f3fb4860e9a 8 7 2006-10-05T23:10:55Z Stepan 2 /* News */ wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here == Progress == OpenBIOS is progressing quickly. See the development download page or the progress page for the latest overview information on how complete OpenBIOS is now. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the mailinglist page == Project Statement == Our project statement contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing credits page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. d9b1e84dba2b02e5d01addff133b2f71be59f0e2 9 8 2006-10-05T23:26:16Z Stepan 2 /* Project Statement */ wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here == Progress == OpenBIOS is progressing quickly. See the development download page or the progress page for the latest overview information on how complete OpenBIOS is now. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the mailinglist page == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing credits page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. 8f463bbb62f1f068bbb0e91ff9784b4a94088e47 10 9 2006-10-05T23:26:36Z Stepan 2 /* Credits */ wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here == Progress == OpenBIOS is progressing quickly. See the development download page or the progress page for the latest overview information on how complete OpenBIOS is now. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the mailinglist page == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. 564abf41289ab156354b57fa61bfa2e2ad48bfb8 11 10 2006-10-05T23:27:17Z Stepan 2 /* Contact */ wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here == Progress == OpenBIOS is progressing quickly. See the development download page or the progress page for the latest overview information on how complete OpenBIOS is now. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. d97a0fb0fe5d463684b9de157dabc7d369fe8b7b MediaWiki:Anontalkpagetext 8 3 48 2006-10-05T21:34:10Z MediaWiki default 0 wikitext text/x-wiki ----''This is the discussion page for an anonymous user who has not created an account yet or who does not use it. We therefore have to use the numerical IP address to identify him/her. Such an IP address can be shared by several users. If you are an anonymous user and feel that irrelevant comments have been directed at you, please [[Special:Userlogin|create an account or log in]] to avoid future confusion with other anonymous users.'' ea431c1f100d302a470f476039f9038a69a23ee2 MediaWiki:Mainpage 8 4 50 2006-10-05T21:34:11Z MediaWiki default 0 wikitext text/x-wiki Main Page 29b077bd4b72e57c6500fdd2d77e1a8b60f2816b 51 50 2006-10-05T22:30:19Z WikiSysop 1 wikitext text/x-wiki Welcome to OpenBIOS 2ccf812f9eeac3a7917f561320ef9c3e0667075e MediaWiki:Nocreatetext 8 5 52 2006-10-05T21:34:11Z MediaWiki default 0 wikitext text/x-wiki This site has restricted the ability to create new pages. You can go back and edit an existing page, or [[Special:Userlogin|log in or create an account]]. a004d441072b245647523ce53acc3aab036170ce MediaWiki:Nosuchuser 8 6 54 2006-10-05T21:34:11Z MediaWiki default 0 wikitext text/x-wiki There is no user by the name "$1". Check your spelling, or create a new account. ebdc8540c9b06b677426238354387441d172491a MediaWiki:Sidebar 8 7 56 2006-10-05T21:34:12Z MediaWiki default 0 wikitext text/x-wiki * navigation ** mainpage|mainpage ** portal-url|portal ** currentevents-url|currentevents ** recentchanges-url|recentchanges ** randompage-url|randompage ** helppage|help ** sitesupport-url|sitesupport af994abf1e4155349addb7f6e4b390a529f7606d 57 56 2006-10-05T22:35:10Z WikiSysop 1 wikitext text/x-wiki * navigation ** mainpage|mainpage ** Documentation|Documentation ** Mailinlist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** License|License ** Downloads|Downloads ** Development ** currentevents-url|currentevents ** recentchanges-url|recentchanges 28448b0f6a1e4a0b069dd5d8d4d4a1f45d31368f 58 57 2006-10-05T22:59:20Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement ** Credits ** License * Experience ** Progress ** Milestones ** Issues ** Releases ** Downloads * Development ** Environment ** Tools *** Detokenizer *** Tokenizer ** FCODE suite ** Kernel ** Flashing * Documentation ** OpenFirmware ** Forth/FCode ** On the Net * Wiki ** currentevents-url|currentevents ** recentchanges-url|recentchanges 599aee6e585a8d9a22f0d0f74d33126e5432f160 59 58 2006-10-05T23:02:05Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** License|License * Experience ** Progress ** Milestones ** Issues ** Releases ** Downloads|Downloads * Development ** Environment ** Tools *** Detokenizer *** Tokenizer ** FCODE suite|FCODE suite ** Kernel ** Flashing * Documentation ** OpenFirmware|OpenFirmware ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** currentevents-url|currentevents ** recentchanges-url|recentchanges fbb0eea3656d18083a19f3a75946abf5abd6bbdb MediaWiki:Userlogin 8 8 76 2006-10-05T21:34:12Z MediaWiki default 0 wikitext text/x-wiki Log in / create account ad8aeb25b80687887db4fdd4596b493cc22da2cc Main Page 0 9 78 2006-10-05T22:29:09Z WikiSysop 1 [[Main Page]] moved to [[Welcome to OpenBIOS]] wikitext text/x-wiki #REDIRECT [[Welcome to OpenBIOS]] 37810046dc3dac22d8ec3227d829965f27bf9694 Contact us 0 10 79 2006-10-05T23:12:27Z Stepan 2 wikitext text/x-wiki == The OpenBIOS Project == OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, documentation. * need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this. We of course appreciate any help, hints, patches, comments, etc. NOTE: Please read our project statement. == Mailinglist == Development and other things about OpenBIOS are discussed on the OpenBIOS mailing list. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on irc.freenode.net in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, firmware and related topics are welcome. 5340ff0be636a025139d16f20e6bfee7d2f01dd5 80 79 2006-10-05T23:12:40Z Stepan 2 /* The OpenBIOS Project */ wikitext text/x-wiki == The OpenBIOS Project == OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, documentation. * need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this. We of course appreciate any help, hints, patches, comments, etc. NOTE: Please read our project statement. == Mailinglist == Development and other things about OpenBIOS are discussed on the OpenBIOS mailing list. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on irc.freenode.net in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, firmware and related topics are welcome. 07fe5f369416eba2dcdbcf9c46c9895a742b2be4 81 80 2006-10-05T23:35:48Z Stepan 2 /* The OpenBIOS Project */ wikitext text/x-wiki == The OpenBIOS Project == OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, documentation. * need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this. We of course appreciate any help, hints, patches, comments, etc. NOTE: Please read our [[Project Statement]]. == Mailinglist == Development and other things about OpenBIOS are discussed on the OpenBIOS mailing list. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on irc.freenode.net in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, firmware and related topics are welcome. 6c557b2978e6a7110bcbc0ae29ffaf725c371948 82 81 2006-10-05T23:36:50Z Stepan 2 /* Mailinglist */ wikitext text/x-wiki == The OpenBIOS Project == OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, documentation. * need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this. We of course appreciate any help, hints, patches, comments, etc. NOTE: Please read our [[Project Statement]]. == Mailinglist == Development and other things about OpenBIOS are discussed on the OpenBIOS [[mailinglist|mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on irc.freenode.net in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, firmware and related topics are welcome. bfdf3a946eacbd28a81400bb0bedb330f1f52476 83 82 2006-10-05T23:37:54Z Stepan 2 /* Internet Relay Chat */ wikitext text/x-wiki == The OpenBIOS Project == OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, documentation. * need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this. We of course appreciate any help, hints, patches, comments, etc. NOTE: Please read our [[Project Statement]]. == Mailinglist == Development and other things about OpenBIOS are discussed on the OpenBIOS [[mailinglist|mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, firmware and related topics are welcome. 6b42984a6726a1891654000bd7f40058d1138d5d 84 83 2006-10-05T23:38:18Z Stepan 2 /* Internet Relay Chat */ wikitext text/x-wiki == The OpenBIOS Project == OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, documentation. * need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this. We of course appreciate any help, hints, patches, comments, etc. NOTE: Please read our [[Project Statement]]. == Mailinglist == Development and other things about OpenBIOS are discussed on the OpenBIOS [[mailinglist|mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome. 15432da499d9522f6988b7c90f6730324fc72dee Mailinglist 0 11 93 2006-10-05T23:13:55Z Stepan 2 wikitext text/x-wiki For questions and general information about LinuxBIOS, subscribe to the LinuxBIOS mailing list, at: * http://www.linuxbios.org/mailman/listinfo/linuxbios A mailing list archive dating back as far as August 2002 can be found at: * http://www.linuxbios.org/pipermail/linuxbios/ 02f4efc450f7fdfe79497ca9a8073fbcc01f5bad 94 93 2006-10-05T23:14:24Z Stepan 2 wikitext text/x-wiki For questions and general information about LinuxBIOS, subscribe to the LinuxBIOS mailing list, at: * http://www.openbios.org/mailman/listinfo/openbios A mailing list archive dating back as far as August 2002 can be found at: * http://www.openbios.org/pipermail/openbios 15868b6e673d28a7c5bee732392244acdc586e1e 95 94 2006-10-05T23:15:31Z Stepan 2 wikitext text/x-wiki The OpenBIOS project currently has one mailing list which is intended for development, informational and general project purposes. You can subscribe to the OpenBIOS mailing list via a web interface or with a simple email (un-)subscription mechanism. For questions and general information about OpenBIOS, subscribe to the OpenBIOS mailing list, at: * http://www.openbios.org/mailman/listinfo/openbios A mailing list archive dating back as far as February 1998 can be found at: * http://www.openbios.org/pipermail/openbios bf371dde8a9bb241371a2370b20033127ae268a6 Code of Conduct 0 12 97 2006-10-05T23:17:37Z Stepan 2 wikitext text/x-wiki Dear OpenBIOS project members and other interested parties, For the ease of development and for information on what can be expected from this project we want to set down the following ground rules in order to achieve a high quality implementation of our project objectives. 1. The objective of this project is to develop a free, open source, architecture independant firmware implementation following, if possible, the IEEE Standard for Boot (Initialization Configuration) Firmware (IEEE 1275-1994). Including not only the implementation of the standard itself but also the required toolkit consisting of a C to FCode compiler, an FCode tokenizer and an FCode detokenizer. This toolkit will simplify driver and API development implementing ANSI C as the development language instead of implementing Forth/FCode directly as suggested by the IEEE standard. 2. We cannot allow _any_ discussion or use of _any_ copyrighted, patented, or otherwise protected Firmware or BIOS implementations without an OSI approved license in this project or on the mailing list associated with this project. All members of this project and/or the according mailing lists agree to not disclose or use any copyrighted, patented, or otherwise protected information, ideas or concepts. 3. We do not intend to implement any of the ideas or concepts expressed in the current Intel 32bit architechture, except when these are necessary to insure the compatability with existing hardware. Such ideas and concepts will only be used if such use is not restricted by _any_ laws, copyrights or patents. 4. In order to assure truly universal implementation and/or optimize the functionality and performance it is our expressed wish to work in conjunction with other open source (firmware) projects, such as LinuxBIOS or U-Boot. 5. Cooperation with hardware vendors is necessary to implement this project on an architecture-independent basis. In certain cases this may include signing non-disclosure agreements with the aforementioned hardware vendors in an attempt to acquire hardware specific information or support that may not otherwise be available although the results of such cooperation must be freely redistributable. 6. Cooperation with any university, research project, or organization is desired except in such cases where the resulting information is restricted in use or redistributability. If, for whatever reasons, any of the above statements are unacceptable or seem to be incorrect or unclear in _any_ way please do not hesitate to discuss this matter on the mailing list, we are open for suggestions. This is simply an attempt to assure the legal status of this project, protecting those involved from legal prosecution as well as to state the general objectives of the project. OpenBIOS development team. 1d3ac3c0e6df55f959e72052405fa96b90e52e52 Credits 0 13 100 2006-10-05T23:20:17Z Stepan 2 wikitext text/x-wiki Development contributions Development contributions * Stefan Reinauer (project coordination, main development) * Patrick Mauritz (initial kernel work) * Samuel Rydh (forth interfaces, MOL port, ...) * Greg Watson (briq port) * David Paktor (improving Toke) * Chen-Chau Chu (ppc fixes) * Tim Barrett (detok patches) * Krishna Myneni (permission to include kForth examples with toke) Hardware/Funding * Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development. * LinuxFund.org chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work! * Newisys funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openbios.org and www.linuxbios.org. If you or somebody else is missing on this list, send an email to Stefan Reinauer 1acf89a52f7e1c582e1c5e4dd945fe08516c6655 101 100 2006-10-05T23:39:51Z Stepan 2 wikitext text/x-wiki Development contributions Development contributions * Stefan Reinauer (project coordination, main development) * Patrick Mauritz (initial kernel work) * Samuel Rydh (forth interfaces, MOL port, ...) * Greg Watson (briq port) * David Paktor (improving Toke) * Chen-Chau Chu (ppc fixes) * Tim Barrett (detok patches) * Krishna Myneni (permission to include kForth examples with toke) Hardware/Funding * Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development. * [http://www.linuxfund.org/ LinuxFund.org] chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work! * [http://www.newisys.com/ Newisys] funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openbios.org and www.linuxbios.org. If you or somebody else is missing on this list, send an email to Stefan Reinauer 679795e23af566da501ca040f73f434df41148f3 Licensing 0 14 107 2006-10-05T23:21:22Z Stepan 2 wikitext text/x-wiki = OpenBIOS Licensing = OpenBIOS is licensed under the GNU General Public License v2. If you adapt OpenBIOS to your needs, please contact us with your changes so that you can contribute your changes back to the community. = Why GPL? = We see the GPL giving OpenBIOS a big competitive advantage over other firmware solutions: * As a hardware vendor you get the warranty that nobody hiddenly improves the code you have been contributing without giving those improvements back. Thus, GPL guarantees that you keep control over your work and contributions. * End users / customers get great benefit from OpenBIOS being GPL licensed: The GPL insures customers that a given platform will act like all other OpenBIOS platforms. BSD is a negative marketing point where BIOS is concerned. = View the license = Have a look at the complete license b602b654e413058112896cc05b5debef95ebde42 IEEE 1275-1994 0 15 112 2006-10-05T23:25:41Z Stepan 2 wikitext text/x-wiki After 5 years the IEEE 1275-1994 standard got withdrawn by the IEEE Standards Association. This does by no means implicate that this standard is abandoned or dead. There are several commercial implementations of Open Firmware and a quite reasonable number of hardware vendors support it. IEEE sold it to Global Engineering who still offer it. To Contact Global Engineering, use Phone: 1-800-854-7179, Fax: 303-397-2740. Out side the U.S. call 303-792-2181. You can also purchase the IEEE 1275-1994 document online from the Global Engineering website. To get started with OpenBIOS, download the IEEE 1275-1994, Standard for Boot (Initialization Configuration) Firmware Core Requirements and Practices. You can get the document from our local mirror or from the IEEE 1275-1994 ftp archive at sun.com. For more information on IEEE 1275 Open Firmware, we recommend you browse the IEEE Standard 1275 Working Group's Home Page. There you will find general information and official minutes of the Working Group. The Open Firmware standard is the elementary base of OpenBIOS. Any questions are welcome, please contact Stefan Reinauer or the OpenBIOS Mailinglist. f43166ecd487463305222d268f5f71b90367c255 OpenBIOS 0 16 117 2006-10-05T23:41:56Z Stepan 2 wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the OpenBIOS issue tracker for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the OpenBIOS download page to get a development snapshot of OpenBIOS. For information on the different OpenBIOS parts, have a look at the OpenBIOS progress page. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: OpenBIOS 0.99.1 (2004-11-09) Development Environment == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the FCode Suite page (2006-08-08) == detok == Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) == toke == Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) == kernel == Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. c08fd49b7d2b7e8b7730a56a736285b32f4da32d 118 117 2006-10-05T23:43:46Z Stepan 2 /* OpenBIOS - Code Releases */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. For information on the different OpenBIOS parts, have a look at the OpenBIOS progress page. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: OpenBIOS 0.99.1 (2004-11-09) Development Environment == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the FCode Suite page (2006-08-08) == detok == Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) == toke == Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) == kernel == Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. 21f366d5bc76223581bf656b8cb2a8132dc7a471 119 118 2006-10-05T23:44:07Z Stepan 2 /* OpenBIOS - Code Releases */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: OpenBIOS 0.99.1 (2004-11-09) Development Environment == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the FCode Suite page (2006-08-08) == detok == Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) == toke == Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) == kernel == Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. 5e1264afc187ea73e7506ae4793fbdfce0eecddd 120 119 2006-10-05T23:44:46Z Stepan 2 /* OpenBIOS */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: OpenBIOS 0.99.1 (2004-11-09) == Development Environment == == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the FCode Suite page (2006-08-08) == detok == Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) == toke == Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) == kernel == Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. e450828184e16adea9f827c843bf609faeb4fa45 121 120 2006-10-05T23:45:01Z Stepan 2 /* FCode Suite */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: OpenBIOS 0.99.1 (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the FCode Suite page (2006-08-08) == detok == Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) == toke == Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) == kernel == Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. b2a1c0ae38d9c664db8f622cef42dd6f68b66261 122 121 2006-10-05T23:45:12Z Stepan 2 /* detok */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: OpenBIOS 0.99.1 (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the FCode Suite page (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) == toke == Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) == kernel == Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. c206dd80cc8373b5d0e56e56a0c82042c1c96e9b 123 122 2006-10-05T23:45:29Z Stepan 2 /* toke */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: OpenBIOS 0.99.1 (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the FCode Suite page (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) == kernel == Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. 5d732389d0b71b345e34df146f09a5ba1697d28e 124 123 2006-10-05T23:45:39Z Stepan 2 /* kernel */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: OpenBIOS 0.99.1 (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the FCode Suite page (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. 31fae4f44ca17bdc60e421bdac254f72161a2a6d 125 124 2006-10-05T23:46:01Z Stepan 2 /* detok */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: OpenBIOS 0.99.1 (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the FCode Suite page (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. b960a83ef2337f300fdd19cad8fa179736750884 126 125 2006-10-05T23:46:11Z Stepan 2 /* toke */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: OpenBIOS 0.99.1 (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the FCode Suite page (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. d76e0711b609707cc1468f07f34ac871820ec782 127 126 2006-10-05T23:46:22Z Stepan 2 /* kernel */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: OpenBIOS 0.99.1 (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the FCode Suite page (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. 77e8812814a59233cd4efeccb4a977c95103ff57 FCODE suite 0 17 197 2006-10-05T23:47:28Z Stepan 2 wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. Downloading the OpenBIOS FCode Suite? * Modified Sources and Makefiles Available as a Tar-File: TokzrNewSrcFiles.tar.bz2 * User's Guide documents There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the New Features of the Tokenizer, * the Detokenizer, and * the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: Documents.tar.bz2 * Executable binaries for three platforms There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: Binaries.tar.bz2 * Includ-able tokenizer-source files for Local Values Support (explained in one of the User's Guide documents) Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 Unit-Test Suite * The suite of unit-test cases This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 * The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 Unit-Test Suite Logs These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the X86/Cygwin platform Available as a Tar-File: X86_Cygwin_TestLog.tar.bz2 * The results from a run of the Unit-Test Suite on the Power-PC/Linux platform Available as a Tar-File: PPC_GNU_Linux_TestLog.tar.bz2 * The results from a run of the Unit-Test Suite on the Power-PC/AIX platform Available as a Tar-File: PPC_AIX_TestLog.tar.bz2 d575018d9dc846bc5fd8856c209ab104574b8b10 198 197 2006-10-05T23:49:04Z Stepan 2 /* What is the OpenBIOS FCODE Suite? */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite? == * Modified Sources and Makefiles Available as a Tar-File: TokzrNewSrcFiles.tar.bz2 * User's Guide documents There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the New Features of the Tokenizer, * the Detokenizer, and * the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: Documents.tar.bz2 * Executable binaries for three platforms There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: Binaries.tar.bz2 * Includ-able tokenizer-source files for Local Values Support (explained in one of the User's Guide documents) Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == * The suite of unit-test cases This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 * The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the X86/Cygwin platform Available as a Tar-File: X86_Cygwin_TestLog.tar.bz2 * The results from a run of the Unit-Test Suite on the Power-PC/Linux platform Available as a Tar-File: PPC_GNU_Linux_TestLog.tar.bz2 * The results from a run of the Unit-Test Suite on the Power-PC/AIX platform Available as a Tar-File: PPC_AIX_TestLog.tar.bz2 9ccb49b9bb99e739ef7e62e088db71a98585121c 199 198 2006-10-05T23:51:52Z Stepan 2 /* Unit-Test Suite Logs */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite? == * Modified Sources and Makefiles Available as a Tar-File: TokzrNewSrcFiles.tar.bz2 * User's Guide documents There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the New Features of the Tokenizer, * the Detokenizer, and * the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: Documents.tar.bz2 * Executable binaries for three platforms There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: Binaries.tar.bz2 * Includ-able tokenizer-source files for Local Values Support (explained in one of the User's Guide documents) Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == * The suite of unit-test cases This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 * The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the Power-PC/Linux platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the Power-PC/AIX platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 408bf0f2fa07e34563224b77e0f6c468980655d1 200 199 2006-10-05T23:52:08Z Stepan 2 /* Unit-Test Suite Logs */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite? == * Modified Sources and Makefiles Available as a Tar-File: TokzrNewSrcFiles.tar.bz2 * User's Guide documents There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the New Features of the Tokenizer, * the Detokenizer, and * the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: Documents.tar.bz2 * Executable binaries for three platforms There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: Binaries.tar.bz2 * Includ-able tokenizer-source files for Local Values Support (explained in one of the User's Guide documents) Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == * The suite of unit-test cases This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 * The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the Power-PC/Linux platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the Power-PC/AIX platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 934e4ce03d8b07026ccfdcf6fd52380314dec7cd FCODE suite 0 17 201 200 2006-10-05T23:52:52Z Stepan 2 /* Unit-Test Suite Logs */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite? == * Modified Sources and Makefiles Available as a Tar-File: TokzrNewSrcFiles.tar.bz2 * User's Guide documents There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the New Features of the Tokenizer, * the Detokenizer, and * the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: Documents.tar.bz2 * Executable binaries for three platforms There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: Binaries.tar.bz2 * Includ-able tokenizer-source files for Local Values Support (explained in one of the User's Guide documents) Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == * The suite of unit-test cases This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 * The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 0aefaabdabd08a53bba97f6d50dc27cec2c88e6b 202 201 2006-10-05T23:53:41Z Stepan 2 /* Unit-Test Suite */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite? == * Modified Sources and Makefiles Available as a Tar-File: TokzrNewSrcFiles.tar.bz2 * User's Guide documents There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the New Features of the Tokenizer, * the Detokenizer, and * the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: Documents.tar.bz2 * Executable binaries for three platforms There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: Binaries.tar.bz2 * Includ-able tokenizer-source files for Local Values Support (explained in one of the User's Guide documents) Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == * The suite of unit-test cases This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 * The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] bc724b6b289f4bacc4fd0660899a87ed3dcd9d17 203 202 2006-10-05T23:54:24Z Stepan 2 /* Unit-Test Suite */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite? == * Modified Sources and Makefiles Available as a Tar-File: TokzrNewSrcFiles.tar.bz2 * User's Guide documents There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the New Features of the Tokenizer, * the Detokenizer, and * the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: Documents.tar.bz2 * Executable binaries for three platforms There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: Binaries.tar.bz2 * Includ-able tokenizer-source files for Local Values Support (explained in one of the User's Guide documents) Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == === The suite of unit-test cases === This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 05be658be4c78f066c14107ba92270905fd82b85 204 203 2006-10-05T23:56:13Z Stepan 2 /* Downloading the OpenBIOS FCode Suite? */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite? == * Modified Sources and Makefiles. Available as a Tar-File: TokzrNewSrcFiles.tar.bz2 * User's Guide documents There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the New Features of the Tokenizer, * the Detokenizer, and * the Local Values feature, which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: Documents.tar.bz2 * Executable binaries for three platforms There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: Binaries.tar.bz2 * Includ-able tokenizer-source files for Local Values Support (explained in one of the User's Guide documents) Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == === The suite of unit-test cases === This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] f9f9e324aba3f14a7b64809625654abe9e5178d1 205 204 2006-10-06T01:07:19Z WikiSysop 1 /* Downloading the OpenBIOS FCode Suite? */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executable binaries for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === * Includ-able tokenizer-source files for Local Values Support (explained in one of the User's Guide documents) Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == === The suite of unit-test cases === This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] cecb6c365c2179848d209945e9a12521f8389748 206 205 2006-10-06T01:07:33Z WikiSysop 1 /* Executable binaries for three platforms */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === * Includ-able tokenizer-source files for Local Values Support (explained in one of the User's Guide documents) Five files: One supplies the basic functionality, the second adds a development-time facility, the third generates a variant behavior ("Global" scope rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == === The suite of unit-test cases === This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 4a0317f18aad6bda498d9375da2942bb03f7c4ef 207 206 2006-10-06T01:09:15Z WikiSysop 1 /* Local Value Support */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === * Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents) Five files: One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality], the second adds a development-time facility, the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 === Todo === * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == === The suite of unit-test cases === This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 86c66d426be12c2f6cd0d14749588a99b4797a25 IEEE 1275-1994 0 15 113 112 2006-10-05T23:58:24Z Stepan 2 wikitext text/x-wiki After 5 years the IEEE 1275-1994 standard got withdrawn by the IEEE Standards Association. This does by no means implicate that this standard is abandoned or dead. There are several commercial implementations of Open Firmware and a quite reasonable number of hardware vendors support it. IEEE sold it to Global Engineering who still offer it. To Contact Global Engineering, use Phone: 1-800-854-7179, Fax: 303-397-2740. Out side the U.S. call 303-792-2181. You can also purchase the IEEE 1275-1994 document online from the [http://global.ihs.com/ Global Engineering website]. To get started with OpenBIOS, download the IEEE 1275-1994, Standard for Boot (Initialization Configuration) Firmware Core Requirements and Practices. You can get the document from our [http://www.openbios.org/docs/of1275.pdf local mirror] or from the [ftp://playground.sun.com/pub/p1275/coredoc/1275-1994/1275.ps.gz IEEE 1275-1994 ftp archive at sun.com]. For more information on IEEE 1275 Open Firmware, we recommend you browse the [http://playground.sun.com/pub/p1275 IEEE Standard 1275 Working Group's Home Page]. There you will find general information and official minutes of the Working Group. The Open Firmware standard is the elementary base of OpenBIOS. Any questions are welcome, please contact [[Stepan|Stefan Reinauer] or the [[Mailinglist||OpenBIOS Mailinglist]]. 771db64227d5d058e784b9069af79e74ee226d2b 114 113 2006-10-05T23:58:41Z Stepan 2 wikitext text/x-wiki After 5 years the IEEE 1275-1994 standard got withdrawn by the IEEE Standards Association. This does by no means implicate that this standard is abandoned or dead. There are several commercial implementations of Open Firmware and a quite reasonable number of hardware vendors support it. IEEE sold it to Global Engineering who still offer it. To Contact Global Engineering, use Phone: 1-800-854-7179, Fax: 303-397-2740. Out side the U.S. call 303-792-2181. You can also purchase the IEEE 1275-1994 document online from the [http://global.ihs.com/ Global Engineering website]. To get started with OpenBIOS, download the IEEE 1275-1994, Standard for Boot (Initialization Configuration) Firmware Core Requirements and Practices. You can get the document from our [http://www.openbios.org/docs/of1275.pdf local mirror] or from the [ftp://playground.sun.com/pub/p1275/coredoc/1275-1994/1275.ps.gz IEEE 1275-1994 ftp archive at sun.com]. For more information on IEEE 1275 Open Firmware, we recommend you browse the [http://playground.sun.com/pub/p1275 IEEE Standard 1275 Working Group's Home Page]. There you will find general information and official minutes of the Working Group. The Open Firmware standard is the elementary base of OpenBIOS. Any questions are welcome, please contact [[Stepan|Stefan Reinauer] or the [[Mailinglist|OpenBIOS Mailinglist]]. 3c25b188f148bca33297cf3ce9d5b1d1e85689d9 115 114 2006-10-06T00:00:16Z Stepan 2 wikitext text/x-wiki After 5 years the IEEE 1275-1994 standard got withdrawn by the IEEE Standards Association. This does by no means implicate that this standard is abandoned or dead. There are several commercial implementations of Open Firmware and a quite reasonable number of hardware vendors support it. IEEE sold it to Global Engineering who still offer it. To Contact Global Engineering, use Phone: 1-800-854-7179, Fax: 303-397-2740. Out side the U.S. call 303-792-2181. You can also purchase the IEEE 1275-1994 document online from the [http://global.ihs.com/ Global Engineering website]. To get started with OpenBIOS, download the IEEE 1275-1994, Standard for Boot (Initialization Configuration) Firmware Core Requirements and Practices. You can get the document from our [http://www.openbios.org/docs/of1275.pdf local mirror] or from the [ftp://playground.sun.com/pub/p1275/coredoc/1275-1994/1275.ps.gz IEEE 1275-1994 ftp archive at sun.com]. For more information on IEEE 1275 Open Firmware, we recommend you browse the [http://playground.sun.com/pub/p1275 IEEE Standard 1275 Working Group's Home Page]. There you will find general information and official minutes of the Working Group. The Open Firmware standard is the elementary base of OpenBIOS. Any questions are welcome, please contact [[User:Stepan|Stefan Reinauer]] or the [[Mailinglist|OpenBIOS Mailinglist]]. 3ae9d9317a1fdc2c0d1d6660aaf54bb41f2dc05b User:Stepan 2 18 272 2006-10-05T23:59:13Z Stepan 2 wikitext text/x-wiki === About Stefan R. === Stefan founded the OpenBIOS project in 1997 and works on firmware related issues ever since. His company [http://www.coresystems.de/ coresystems GmbH] offers a variety of firmware and lowlevel related services. [[Image:stefan2.jpg]] See http://www.openbios.org/ for more information on OpenBIOS 21cb6632e1ac71095ae9ce77d504da1960bbe76b 273 272 2006-10-05T23:59:40Z Stepan 2 /* About Stefan R. */ wikitext text/x-wiki === About Stefan R. === Stefan founded the OpenBIOS project in 1997 and works on firmware related issues ever since. His company [http://www.coresystems.de/ coresystems GmbH] offers a variety of firmware and lowlevel related services. [[Image:stefan2.jpg]] See http://www.linuxbios.org/ for more information on LinuxBIOS f8b810d3742ff548930adc7ee8028fab852b1cd9 274 273 2006-10-06T00:00:45Z Stepan 2 /* About Stefan R. */ wikitext text/x-wiki === About Stefan R. === Stefan founded the OpenBIOS project in 1997 and works on firmware related issues ever since. His company [http://www.coresystems.de/ coresystems GmbH] offers a variety of firmware and lowlevel related services. [[Image:stefan2.jpg]] See http://www.linuxbios.org/ for more information on LinuxBIOS Contact Stefan at stepan at coresystems dot eu 150634d67a83fed09a3743a4431abce6e1dd930a Welcome to OpenBIOS 0 2 12 11 2006-10-06T00:02:19Z Stepan 2 /* Progress */ wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here == Download == Get the latest version of OpenBIOS. See the [Downloads|development download page] or the [Releases|releases page] == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. fe48c17cfe83a57f8a01fbdd6d1321ec63979f1e 13 12 2006-10-06T00:02:48Z Stepan 2 /* Download */ wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]] == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. 06ff640a9679f4ee0dd28f0a611ca01f1cc6a0de 14 13 2006-10-06T00:02:56Z Stepan 2 /* Download */ wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. c00cd54d5c12b5f940b5024228e2a55f7c8b8c1a Forth/FCode 0 19 278 2006-10-06T00:04:33Z Stepan 2 wikitext text/x-wiki = What is Forth? = From the Forth FAQ: Forth is a stack-based, extensible language without type-checking. It is probably best known for its "reverse Polish" (postfix) arithmetic notation, familiar to users of Hewlett-Packard calculators: to add two numbers in Forth, you would type 3 5 + instead of 3+5. The fundamental program unit in Forth is the "word": a named data item, subroutine, or operator. Programming in Forth consists of defining new words in terms of existing ones. = Why and where is Forth used? = Although invented in 1970, Forth became widely known with the advent of personal computers, where its high performance and economy of memory were attractive. These advantages still make Forth popular in embedded microcontroller systems, in locations ranging from the Space Shuttle to the bar-code reader used by your Federal Express driver. Forth's interactive nature streamlines the test and development of new hardware. Incremental development, a fast program-debug cycle, full interactive access to any level of the program, and the ability to work at a high "level of abstraction," all contribute to Forth's reputation for very high programmer productivity. These, plus the flexibility and malleability of the language, are the reasons most cited for choosing Forth for embedded systems. Find more information here. = FCode = FCode is a Forth dialect compliant to ANS Forth, that is available in two different forms: source and bytecode. FCode bytecode is the compiled form of FCode source. = Why bytecode? = Bytecode is small and efficient. And an evaluator (bytecode virtual machine) is almost trivial to implement. For example, putting a 1 to the stack only takes one byte in an FCode bytecode binary. This is especially valuable on combined system or expansion hardware roms where the available space is limited. 964ac8f861154a026ab114b520a9a899541d925e 279 278 2006-10-06T00:05:19Z Stepan 2 /* Why and where is Forth used? */ wikitext text/x-wiki = What is Forth? = From the Forth FAQ: Forth is a stack-based, extensible language without type-checking. It is probably best known for its "reverse Polish" (postfix) arithmetic notation, familiar to users of Hewlett-Packard calculators: to add two numbers in Forth, you would type 3 5 + instead of 3+5. The fundamental program unit in Forth is the "word": a named data item, subroutine, or operator. Programming in Forth consists of defining new words in terms of existing ones. = Why and where is Forth used? = Although invented in 1970, Forth became widely known with the advent of personal computers, where its high performance and economy of memory were attractive. These advantages still make Forth popular in embedded microcontroller systems, in locations ranging from the Space Shuttle to the bar-code reader used by your Federal Express driver. Forth's interactive nature streamlines the test and development of new hardware. Incremental development, a fast program-debug cycle, full interactive access to any level of the program, and the ability to work at a high "level of abstraction," all contribute to Forth's reputation for very high programmer productivity. These, plus the flexibility and malleability of the language, are the reasons most cited for choosing Forth for embedded systems. Find more information [http://www.complang.tuwien.ac.at/forth/faq/why-forth here]. = FCode = FCode is a Forth dialect compliant to ANS Forth, that is available in two different forms: source and bytecode. FCode bytecode is the compiled form of FCode source. = Why bytecode? = Bytecode is small and efficient. And an evaluator (bytecode virtual machine) is almost trivial to implement. For example, putting a 1 to the stack only takes one byte in an FCode bytecode binary. This is especially valuable on combined system or expansion hardware roms where the available space is limited. dd2af80ee5770998c6cd12aba2d518bb90af8018 280 279 2006-10-06T00:05:38Z Stepan 2 /* What is Forth? */ wikitext text/x-wiki = What is Forth? = From the [http://www.faqs.org/faqs/computer-lang/forth-faq/part1/ Forth FAQ]: Forth is a stack-based, extensible language without type-checking. It is probably best known for its "reverse Polish" (postfix) arithmetic notation, familiar to users of Hewlett-Packard calculators: to add two numbers in Forth, you would type 3 5 + instead of 3+5. The fundamental program unit in Forth is the "word": a named data item, subroutine, or operator. Programming in Forth consists of defining new words in terms of existing ones. = Why and where is Forth used? = Although invented in 1970, Forth became widely known with the advent of personal computers, where its high performance and economy of memory were attractive. These advantages still make Forth popular in embedded microcontroller systems, in locations ranging from the Space Shuttle to the bar-code reader used by your Federal Express driver. Forth's interactive nature streamlines the test and development of new hardware. Incremental development, a fast program-debug cycle, full interactive access to any level of the program, and the ability to work at a high "level of abstraction," all contribute to Forth's reputation for very high programmer productivity. These, plus the flexibility and malleability of the language, are the reasons most cited for choosing Forth for embedded systems. Find more information [http://www.complang.tuwien.ac.at/forth/faq/why-forth here]. = FCode = FCode is a Forth dialect compliant to ANS Forth, that is available in two different forms: source and bytecode. FCode bytecode is the compiled form of FCode source. = Why bytecode? = Bytecode is small and efficient. And an evaluator (bytecode virtual machine) is almost trivial to implement. For example, putting a 1 to the stack only takes one byte in an FCode bytecode binary. This is especially valuable on combined system or expansion hardware roms where the available space is limited. 9b146fa8816cd78ad3dd550e275abfb107318c28 On the Net 0 20 283 2006-10-06T00:07:18Z Stepan 2 wikitext text/x-wiki == Open Firmware Companies/Vendor support == * CodeGen * SUN * Apple * FirmWorks * Hardware Support - Chipmakers angle for Linux support, an article about te importance of Open Source software for harware vendors by Stephen Shankland Open Firmware Documentation (non local) == What is Open Firmware? == Hardware Independant Boot Code - - An Open Firmware description at an introductory level by Matthew Johnson Open Firmware homepage The OpenFirmware IEEE 1275-1994 Apple's Open Firmware Home Page - Besides Apple's Open Firmware Technotes, this page has a link to a list of PCI cards supporting Open Firmware Writing FCode 3.x Programs OpenBoot 3.x Command Reference Manual OpenBoot 3.x Quick Reference == Forth == Forth FAQ kForth - programming examples DPANS'94 - very interesting: annex D and E. Gforth - Forth implementation of the GNU project PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files Moving Forth - Article on writing Forth Kernels by Brad Rodriguez Writing FCode 3.0 Programs Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. gfob - a forth source obfuscator Primer - A Beginner's Guide to Forth by J.V. Noble Forth engines - written in several languages. Thoughtful Programming and Forth - an essay by Jeff Fox. Selected Forth Papers - at theforthsource.com Stack Machines Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == Multiboot standard GRUB - GRand Unified Bootloader Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. Flashing on Linux Systems MTD - Memory Technology Device Subsystem for Linux /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware == Other Open Source Firmware Implementations == LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux Virtual Machines and Emulation Bochs - portable open source IA-32 (x86) PC emulator DOSemu - DOS Emulation for Linux Plex86 - extensible open source PC virtualization software 81fa0372ba788589ebb1bc33cfa1cf02f6333f44 284 283 2006-10-06T00:08:54Z Stepan 2 /* Open Firmware Companies/Vendor support */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.apple.com Apple] * [http://www.ibm.com IBM] == What is Open Firmware? == Hardware Independant Boot Code - - An Open Firmware description at an introductory level by Matthew Johnson Open Firmware homepage The OpenFirmware IEEE 1275-1994 Apple's Open Firmware Home Page - Besides Apple's Open Firmware Technotes, this page has a link to a list of PCI cards supporting Open Firmware Writing FCode 3.x Programs OpenBoot 3.x Command Reference Manual OpenBoot 3.x Quick Reference == Forth == Forth FAQ kForth - programming examples DPANS'94 - very interesting: annex D and E. Gforth - Forth implementation of the GNU project PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files Moving Forth - Article on writing Forth Kernels by Brad Rodriguez Writing FCode 3.0 Programs Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. gfob - a forth source obfuscator Primer - A Beginner's Guide to Forth by J.V. Noble Forth engines - written in several languages. Thoughtful Programming and Forth - an essay by Jeff Fox. Selected Forth Papers - at theforthsource.com Stack Machines Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == Multiboot standard GRUB - GRand Unified Bootloader Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. Flashing on Linux Systems MTD - Memory Technology Device Subsystem for Linux /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware == Other Open Source Firmware Implementations == LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux Virtual Machines and Emulation Bochs - portable open source IA-32 (x86) PC emulator DOSemu - DOS Emulation for Linux Plex86 - extensible open source PC virtualization software c6a1343686b2ca089860bc4702ebfaddf34a3e10 285 284 2006-10-06T00:09:39Z Stepan 2 /* Other Open Source Firmware Implementations */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.apple.com Apple] * [http://www.ibm.com IBM] == What is Open Firmware? == Hardware Independant Boot Code - - An Open Firmware description at an introductory level by Matthew Johnson Open Firmware homepage The OpenFirmware IEEE 1275-1994 Apple's Open Firmware Home Page - Besides Apple's Open Firmware Technotes, this page has a link to a list of PCI cards supporting Open Firmware Writing FCode 3.x Programs OpenBoot 3.x Command Reference Manual OpenBoot 3.x Quick Reference == Forth == Forth FAQ kForth - programming examples DPANS'94 - very interesting: annex D and E. Gforth - Forth implementation of the GNU project PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files Moving Forth - Article on writing Forth Kernels by Brad Rodriguez Writing FCode 3.0 Programs Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. gfob - a forth source obfuscator Primer - A Beginner's Guide to Forth by J.V. Noble Forth engines - written in several languages. Thoughtful Programming and Forth - an essay by Jeff Fox. Selected Forth Papers - at theforthsource.com Stack Machines Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == Multiboot standard GRUB - GRand Unified Bootloader Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. Flashing on Linux Systems MTD - Memory Technology Device Subsystem for Linux /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware == Other Open Source Firmware Implementations == * LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. * FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. * TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. * Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software f2d679a3b6a4837c2d516c8cbffaa1135f8c35fd 286 285 2006-10-06T00:10:16Z Stepan 2 /* Booting */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.apple.com Apple] * [http://www.ibm.com IBM] == What is Open Firmware? == Hardware Independant Boot Code - - An Open Firmware description at an introductory level by Matthew Johnson Open Firmware homepage The OpenFirmware IEEE 1275-1994 Apple's Open Firmware Home Page - Besides Apple's Open Firmware Technotes, this page has a link to a list of PCI cards supporting Open Firmware Writing FCode 3.x Programs OpenBoot 3.x Command Reference Manual OpenBoot 3.x Quick Reference == Forth == Forth FAQ kForth - programming examples DPANS'94 - very interesting: annex D and E. Gforth - Forth implementation of the GNU project PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files Moving Forth - Article on writing Forth Kernels by Brad Rodriguez Writing FCode 3.0 Programs Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. gfob - a forth source obfuscator Primer - A Beginner's Guide to Forth by J.V. Noble Forth engines - written in several languages. Thoughtful Programming and Forth - an essay by Jeff Fox. Selected Forth Papers - at theforthsource.com Stack Machines Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * Multiboot standard * GRUB - GRand Unified Bootloader * Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. == Flashing on Linux Systems == * MTD - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware * Uniflash (nonlinux) * flashrom (LinuxBIOS) == Other Open Source Firmware Implementations == * LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. * FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. * TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. * Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software 960dd2cd5ee04b8e33ae3e9cf8d446e01a89a323 287 286 2006-10-06T00:11:21Z Stepan 2 /* Forth */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.apple.com Apple] * [http://www.ibm.com IBM] == What is Open Firmware? == Hardware Independant Boot Code - - An Open Firmware description at an introductory level by Matthew Johnson Open Firmware homepage The OpenFirmware IEEE 1275-1994 Apple's Open Firmware Home Page - Besides Apple's Open Firmware Technotes, this page has a link to a list of PCI cards supporting Open Firmware Writing FCode 3.x Programs OpenBoot 3.x Command Reference Manual OpenBoot 3.x Quick Reference == Forth == * Forth FAQ * kForth - programming examples * DPANS'94 - very interesting: annex D and E. * Gforth - Forth implementation of the GNU project * PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files * Moving Forth - Article on writing Forth Kernels by Brad Rodriguez * Writing FCode 3.0 Programs * Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * gfob - a forth source obfuscator * Primer - A Beginner's Guide to Forth by J.V. Noble * Forth engines - written in several languages. * Thoughtful Programming and Forth - an essay by Jeff Fox. * Selected Forth Papers - at theforthsource.com == Stack Machines == * Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * Multiboot standard * GRUB - GRand Unified Bootloader * Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. == Flashing on Linux Systems == * MTD - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware * Uniflash (nonlinux) * flashrom (LinuxBIOS) == Other Open Source Firmware Implementations == * LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. * FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. * TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. * Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software 477a28d14559e329f37c3a21f8f1859e7ecbf524 288 287 2006-10-06T00:11:41Z Stepan 2 /* What is Open Firmware? */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.apple.com Apple] * [http://www.ibm.com IBM] == What is Open Firmware? == * Hardware Independant Boot Code - - An Open Firmware description at an introductory level by Matthew Johnson * Open Firmware homepage * The OpenFirmware IEEE 1275-1994 * Apple's Open Firmware Home Page - Besides Apple's Open Firmware Technotes, this page has a link to a list of PCI cards supporting Open Firmware * Writing FCode 3.x Programs * OpenBoot 3.x Command Reference Manual * OpenBoot 3.x Quick Reference == Forth == * Forth FAQ * kForth - programming examples * DPANS'94 - very interesting: annex D and E. * Gforth - Forth implementation of the GNU project * PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files * Moving Forth - Article on writing Forth Kernels by Brad Rodriguez * Writing FCode 3.0 Programs * Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * gfob - a forth source obfuscator * Primer - A Beginner's Guide to Forth by J.V. Noble * Forth engines - written in several languages. * Thoughtful Programming and Forth - an essay by Jeff Fox. * Selected Forth Papers - at theforthsource.com == Stack Machines == * Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * Multiboot standard * GRUB - GRand Unified Bootloader * Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. == Flashing on Linux Systems == * MTD - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware * Uniflash (nonlinux) * flashrom (LinuxBIOS) == Other Open Source Firmware Implementations == * LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. * FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. * TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. * Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software c082dee2bd289bc7bb792cf6b2f89e043163b918 289 288 2006-10-06T00:33:48Z WikiSysop 1 /* What is Open Firmware? */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.apple.com Apple] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * Forth FAQ * kForth - programming examples * DPANS'94 - very interesting: annex D and E. * Gforth - Forth implementation of the GNU project * PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files * Moving Forth - Article on writing Forth Kernels by Brad Rodriguez * Writing FCode 3.0 Programs * Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * gfob - a forth source obfuscator * Primer - A Beginner's Guide to Forth by J.V. Noble * Forth engines - written in several languages. * Thoughtful Programming and Forth - an essay by Jeff Fox. * Selected Forth Papers - at theforthsource.com == Stack Machines == * Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * Multiboot standard * GRUB - GRand Unified Bootloader * Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. == Flashing on Linux Systems == * MTD - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware * Uniflash (nonlinux) * flashrom (LinuxBIOS) == Other Open Source Firmware Implementations == * LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. * FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. * TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. * Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software 53882b1a85c1e7f1b098bff4e6651646532f5345 290 289 2006-10-06T00:34:05Z WikiSysop 1 /* Open Firmware Companies/Vendor support */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * Forth FAQ * kForth - programming examples * DPANS'94 - very interesting: annex D and E. * Gforth - Forth implementation of the GNU project * PFE - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * vnpforth - contains a traditional compiler, which turns Forth into standard object (.o) files * Moving Forth - Article on writing Forth Kernels by Brad Rodriguez * Writing FCode 3.0 Programs * Hayes ANS compliance test - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * gfob - a forth source obfuscator * Primer - A Beginner's Guide to Forth by J.V. Noble * Forth engines - written in several languages. * Thoughtful Programming and Forth - an essay by Jeff Fox. * Selected Forth Papers - at theforthsource.com == Stack Machines == * Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * Multiboot standard * GRUB - GRand Unified Bootloader * Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. == Flashing on Linux Systems == * MTD - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware * Uniflash (nonlinux) * flashrom (LinuxBIOS) == Other Open Source Firmware Implementations == * LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. * FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. * TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. * Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software 8ad6789f936c6b8e9c59596c34daef26323ce3c1 291 290 2006-10-06T00:39:11Z WikiSysop 1 /* Forth */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * Stack Computers: the new wave - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * Multiboot standard * GRUB - GRand Unified Bootloader * Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. == Flashing on Linux Systems == * MTD - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware * Uniflash (nonlinux) * flashrom (LinuxBIOS) == Other Open Source Firmware Implementations == * LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. * FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. * TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. * Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software 4266b2aad28d194ece1d676ef8d90595ff83df65 292 291 2006-10-06T00:39:39Z WikiSysop 1 /* Stack Machines */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * Multiboot standard * GRUB - GRand Unified Bootloader * Nilo - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. == Flashing on Linux Systems == * MTD - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware * Uniflash (nonlinux) * flashrom (LinuxBIOS) == Other Open Source Firmware Implementations == * LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. * FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. * TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. * Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software 17719706704f6c64460009587878f44c6257a51b 293 292 2006-10-06T00:40:54Z WikiSysop 1 /* Booting */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org] Etherboot == Flashing on Linux Systems == * MTD - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware * Uniflash (nonlinux) * flashrom (LinuxBIOS) == Other Open Source Firmware Implementations == * LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. * FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. * TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. * Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software 62e03c4c6dbd192c28b0784e50fc6a819348102e 294 293 2006-10-06T00:41:08Z WikiSysop 1 /* Booting */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] == Flashing on Linux Systems == * MTD - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware * Uniflash (nonlinux) * flashrom (LinuxBIOS) == Other Open Source Firmware Implementations == * LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. * FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. * TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. * Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software 60d4e5277613428dcbbe1408cbb5f13bb3518c00 295 294 2006-10-06T00:41:30Z WikiSysop 1 /* Booting */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * MTD - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware * Uniflash (nonlinux) * flashrom (LinuxBIOS) == Other Open Source Firmware Implementations == * LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. * FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. * TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. * Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software ca07cb8bbb2227b6b5487698c9dc8d754cd09538 296 295 2006-10-06T00:43:31Z WikiSysop 1 /* Flashing on Linux Systems */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://linuxbios.org/ LinuxBIOS]) == Other Open Source Firmware Implementations == * LinuxBIOS - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel from flash or over Ethernet using Etherboot. * FreeBIOS - The FreeBIOS sourceforge project hosts all of the LinuxBIOS source code in CVS. * TIARA - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. * Proll - Proll is a firmware replacement for SUN JavaStations to boot Linux == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software 0318df8a111916f1712bc3f15c3491659bf2831a 297 296 2006-10-06T00:47:05Z WikiSysop 1 /* Other Open Source Firmware Implementations */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://linuxbios.org/ LinuxBIOS]) == Other Open Source Firmware Implementations == * [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * redboot * SLOF * SUN OpenBoot * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software da3a0394b9f48186e83d7fb19c433fa6eeb8701e 298 297 2006-10-06T00:47:39Z WikiSysop 1 /* Other Open Source Firmware Implementations */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://linuxbios.org/ LinuxBIOS]) == Other Open Source Firmware Implementations == * [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * redboot * SLOF * Open Hackware * SUN OpenBoot * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * QEMU * XEN * Bochs - portable open source IA-32 (x86) PC emulator * DOSemu - DOS Emulation for Linux * Plex86 - extensible open source PC virtualization software 85215d12db1a6cd98eb01d5e982951e0da7223b1 299 298 2006-10-06T00:49:47Z WikiSysop 1 /* Virtual Machines and Emulation */ wikitext text/x-wiki == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://linuxbios.org/ LinuxBIOS]) == Other Open Source Firmware Implementations == * [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * redboot * SLOF * Open Hackware * SUN OpenBoot * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * [http://www.qemu.com/ QEMU] * [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization * [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator * [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux * Hypervisor * ... daf3ce5c0a98896f4e0a73c17129683fc3682a9a MediaWiki:Sidebar 8 7 60 59 2006-10-06T00:15:10Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Experience ** Progress ** Milestones ** Issues ** Releases ** Downloads|Downloads * Development ** Environment ** Tools *** Detokenizer *** Tokenizer ** FCODE suite|FCODE suite ** Kernel ** Flashing * Documentation ** OpenFirmware|OpenFirmware ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** currentevents-url|currentevents ** recentchanges-url|recentchanges a45712076647cdb1e0418d7811666d879df3f57f 61 60 2006-10-06T00:16:55Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Experience ** Progress ** Milestones ** http://bugzilla.openbios.org/|Issues ** Releases|Releases ** Downloads|Downloads * Development ** Environment ** Tools *** Detokenizer *** Tokenizer ** FCODE suite|FCODE suite ** Kernel ** Flashing * Documentation ** OpenFirmware|OpenFirmware ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 701d930ae9bca6e0fc68c22e6455508940110b82 62 61 2006-10-06T00:18:54Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Experience ** http://bugzilla.openbios.org/|Issues ** Releases|Releases ** Downloads|Downloads ** Milestones|Milestones * Development ** Environment ** Tools *** Detokenizer *** Tokenizer ** FCODE suite|FCODE suite ** Kernel ** Flashing * Documentation ** OpenFirmware|OpenFirmware ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges b8885f380cc8f0134a6727e9a4390c4499c250b2 63 62 2006-10-06T00:21:40Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Experience ** http://bugzilla.openbios.org/|Issues ** Releases|Releases ** Downloads|Downloads ** Milestones|Milestones * Development ** Tools *** detok|Detokenizer *** toke|Tokenizer ** FCODE suite|FCODE suite ** Kernel ** Flashing * Documentation ** OpenFirmware|OpenFirmware ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 22459d2734787b7817efd57ad6db00a9e8e628d7 64 63 2006-10-06T00:22:35Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Experience ** http://bugzilla.openbios.org/|Issues ** Releases|Releases ** Downloads|Downloads ** Milestones|Milestones * Development ** FCODE suite|FCODE suite *** detok|Detokenizer *** toke|Tokenizer ** BeginAgain|Kernel ** FlashRom|Flashing * Documentation ** OpenFirmware|OpenFirmware ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 79b1d6021bde769cc33317c389ed464e89726928 65 64 2006-10-06T01:01:26Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Experience ** http://bugzilla.openbios.org/|Issues ** Releases|Releases ** Downloads|Downloads ** Milestones|Milestones * Development ** FCODE suite|FCODE suite ** BeginAgain|Kernel ** FlashRom|Flashing * Documentation ** OpenFirmware|OpenFirmware ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 97260095c095d5e3c05fe7b49362f9d2a4a74ef6 Licensing 0 14 108 107 2006-10-06T00:15:36Z WikiSysop 1 [[License]] moved to [[Licensing]] wikitext text/x-wiki = OpenBIOS Licensing = OpenBIOS is licensed under the GNU General Public License v2. If you adapt OpenBIOS to your needs, please contact us with your changes so that you can contribute your changes back to the community. = Why GPL? = We see the GPL giving OpenBIOS a big competitive advantage over other firmware solutions: * As a hardware vendor you get the warranty that nobody hiddenly improves the code you have been contributing without giving those improvements back. Thus, GPL guarantees that you keep control over your work and contributions. * End users / customers get great benefit from OpenBIOS being GPL licensed: The GPL insures customers that a given platform will act like all other OpenBIOS platforms. BSD is a negative marketing point where BIOS is concerned. = View the license = Have a look at the complete license b602b654e413058112896cc05b5debef95ebde42 License 0 21 311 2006-10-06T00:15:36Z WikiSysop 1 [[License]] moved to [[Licensing]] wikitext text/x-wiki #REDIRECT [[Licensing]] 1b5229cf3e4acf5a08dd63a0959b794fe0d3ea3c Milestones 0 22 312 2006-10-06T00:19:09Z WikiSysop 1 wikitext text/x-wiki ... soon ... 215fd48902e0c9c5afd9adf1f6e1b50c6763d97e BeginAgain 0 23 313 2006-10-06T00:24:55Z WikiSysop 1 wikitext text/x-wiki = What is BeginAgain? = BeginAgain is the Forth kernel, basically the heart of OpenBIOS. Right after the system is far enough to execute any C code, this kernel will take over control and execute the forth code part of OpenBIOS. BeginAgain supports the Forth language command group of IEEE 1275-1994 and passes the Hayes ANS forth compliance test. = How does BeginAgain work? = The OpenBIOS forth core "BeginAgain" is split into a forth kernel written in C and a forth dictionary which operated on by the kernel. BeginAgain's approach is indirect threading. Forth words are compiled to execution tokens (pointers to the words dictionary entries). Only the prim words (minimal language support) are available as native C code. When building the forth core, you get different versions of the forth kernel: * a "hosted" unix binary. This binary can be used on a unix system: o to execute a forth dictionary from a file. This can be used for testing openbios code in a development environment on a unix host. o to create a dictionary file. Such a dictionary file sets up all of the forth language. Primitives are indexed to save relocations. The default is to create a forth dictionary forth.dict from forth/start.fs. This file includes all of the basic forth language constructs from forth/bootstrap.fs and starts the interpreter. To achieve this, the hosted unix version contains a basic set of forth words coded in C that allow creating a full dictionary. * a varying number of target specific binaries. On x86 you can start openbios for example from GRUB or LinuxBIOS. They are all based on the same forth engine consisting of a dictionary scheduler, primitive words needed to build the forth environment, 2 stacks and a simple set of console functions. These binaries can not be started directly in the unix host environment. = Building and Using BeginAgain = == Requirements == * gcc * grub or any other multiboot loader to run the standalone binary "openbios.multiboot" == Building and Usage == * make this builds "openbios.multiboot", the standalone image and "unix", the hosted image. Additionally it creates a forth dictionary file from forth/start.fs. All generated files are written to the absolute directory held by the variable BUILDDIR, which defaults to obj-[platform]. Some compile time parameters can be tweaked in include/config.h * use "unix" to create a forth dictionary on your own: $ ./unix -Iforth start.fs creates the file forth.dict from forth source forth/start.fs. * use "unix" to run a created dictionary: $ ./unix forth.dict This is useful for testing. * booting openbios You can boot openbios i.e. in grub. Add the following lines to your menu.lst: title openbios kernel (hd0,2)/boot/openbios.multiboot module (hd0,2)/boot/openfirmware.dict Note: change (hd0,2) to the partition you copied openbios and forth.dict to. To boot OpenBIOS from LinuxBIOS/etherboot, you can either use "openbios" or "openbios.full": o openbios is the pure kernel that loads the dictionary from a hardcoded address in flash memory (0xfffe0000) o openbios.full also includes the dictionary directly so that it can be easily used from etherboot or the LinuxBIOS builtin ELF loader without taking care of the dictionary = Dictionary Format = The dictionary is a linked list of forth word definitions. Each forth word in this list looks like the following: name length of name in bytes + 0x80 align with 0's flags (bit 7 set) LFA CFA PFA When the forth interpreter looks for a certain word, it reads the variable last that always points to the last defined word and iterates over the list until it finds an appropriate word. = Glossary = == Dictionary == * LFA == link field address (backlink) * CFA == code field address ("word type") * PFA == program field address (definitions) == Forth Engine == * TIB == text input buffer * inner interpreter: interprets dictionary, does threading * outer interpreter: "user" interpreter, reads forth words from user. 807ede0b278e7ce96ff1586ed5829f0416ea4adb 314 313 2006-10-06T00:25:17Z WikiSysop 1 /* What is BeginAgain? */ wikitext text/x-wiki = What is BeginAgain? = BeginAgain is the Forth kernel, basically the heart of OpenBIOS. Right after the system is far enough to execute any C code, this kernel will take over control and execute the forth code part of OpenBIOS. BeginAgain supports the Forth language command group of IEEE 1275-1994 and passes the Hayes ANS forth compliance test. = How does BeginAgain work? = The OpenBIOS forth core "BeginAgain" is split into a forth kernel written in C and a forth dictionary which operated on by the kernel. BeginAgain's approach is indirect threading. Forth words are compiled to execution tokens (pointers to the words dictionary entries). Only the prim words (minimal language support) are available as native C code. When building the forth core, you get different versions of the forth kernel: * a "hosted" unix binary. This binary can be used on a unix system: o to execute a forth dictionary from a file. This can be used for testing openbios code in a development environment on a unix host. o to create a dictionary file. Such a dictionary file sets up all of the forth language. Primitives are indexed to save relocations. The default is to create a forth dictionary forth.dict from forth/start.fs. This file includes all of the basic forth language constructs from forth/bootstrap.fs and starts the interpreter. To achieve this, the hosted unix version contains a basic set of forth words coded in C that allow creating a full dictionary. * a varying number of target specific binaries. On x86 you can start openbios for example from GRUB or LinuxBIOS. They are all based on the same forth engine consisting of a dictionary scheduler, primitive words needed to build the forth environment, 2 stacks and a simple set of console functions. These binaries can not be started directly in the unix host environment. = Building and Using BeginAgain = == Requirements == * gcc * grub or any other multiboot loader to run the standalone binary "openbios.multiboot" == Building and Usage == * make this builds "openbios.multiboot", the standalone image and "unix", the hosted image. Additionally it creates a forth dictionary file from forth/start.fs. All generated files are written to the absolute directory held by the variable BUILDDIR, which defaults to obj-[platform]. Some compile time parameters can be tweaked in include/config.h * use "unix" to create a forth dictionary on your own: $ ./unix -Iforth start.fs creates the file forth.dict from forth source forth/start.fs. * use "unix" to run a created dictionary: $ ./unix forth.dict This is useful for testing. * booting openbios You can boot openbios i.e. in grub. Add the following lines to your menu.lst: title openbios kernel (hd0,2)/boot/openbios.multiboot module (hd0,2)/boot/openfirmware.dict Note: change (hd0,2) to the partition you copied openbios and forth.dict to. To boot OpenBIOS from LinuxBIOS/etherboot, you can either use "openbios" or "openbios.full": o openbios is the pure kernel that loads the dictionary from a hardcoded address in flash memory (0xfffe0000) o openbios.full also includes the dictionary directly so that it can be easily used from etherboot or the LinuxBIOS builtin ELF loader without taking care of the dictionary = Dictionary Format = The dictionary is a linked list of forth word definitions. Each forth word in this list looks like the following: name length of name in bytes + 0x80 align with 0's flags (bit 7 set) LFA CFA PFA When the forth interpreter looks for a certain word, it reads the variable last that always points to the last defined word and iterates over the list until it finds an appropriate word. = Glossary = == Dictionary == * LFA == link field address (backlink) * CFA == code field address ("word type") * PFA == program field address (definitions) == Forth Engine == * TIB == text input buffer * inner interpreter: interprets dictionary, does threading * outer interpreter: "user" interpreter, reads forth words from user. 996ec99cdade88d135aa85fec2caf0e886420aac 315 314 2006-10-06T00:26:06Z WikiSysop 1 /* How does BeginAgain work? */ wikitext text/x-wiki = What is BeginAgain? = BeginAgain is the Forth kernel, basically the heart of OpenBIOS. Right after the system is far enough to execute any C code, this kernel will take over control and execute the forth code part of OpenBIOS. BeginAgain supports the Forth language command group of IEEE 1275-1994 and passes the Hayes ANS forth compliance test. = How does BeginAgain work? = The OpenBIOS forth core "BeginAgain" is split into a forth kernel written in C and a forth dictionary which operated on by the kernel. BeginAgain's approach is indirect threading. Forth words are compiled to execution tokens (pointers to the words dictionary entries). Only the prim words (minimal language support) are available as native C code. When building the forth core, you get different versions of the forth kernel: * a "hosted" unix binary. This binary can be used on a unix system: ** to execute a forth dictionary from a file. This can be used for testing openbios code in a development environment on a unix host. ** to create a dictionary file. Such a dictionary file sets up all of the forth language. Primitives are indexed to save relocations. The default is to create a forth dictionary forth.dict from forth/start.fs. This file includes all of the basic forth language constructs from forth/bootstrap.fs and starts the interpreter. To achieve this, the hosted unix version contains a basic set of forth words coded in C that allow creating a full dictionary. * a varying number of target specific binaries. On x86 you can start openbios for example from GRUB or LinuxBIOS. They are all based on the same forth engine consisting of a dictionary scheduler, primitive words needed to build the forth environment, 2 stacks and a simple set of console functions. These binaries can not be started directly in the unix host environment. = Building and Using BeginAgain = == Requirements == * gcc * grub or any other multiboot loader to run the standalone binary "openbios.multiboot" == Building and Usage == * make this builds "openbios.multiboot", the standalone image and "unix", the hosted image. Additionally it creates a forth dictionary file from forth/start.fs. All generated files are written to the absolute directory held by the variable BUILDDIR, which defaults to obj-[platform]. Some compile time parameters can be tweaked in include/config.h * use "unix" to create a forth dictionary on your own: $ ./unix -Iforth start.fs creates the file forth.dict from forth source forth/start.fs. * use "unix" to run a created dictionary: $ ./unix forth.dict This is useful for testing. * booting openbios You can boot openbios i.e. in grub. Add the following lines to your menu.lst: title openbios kernel (hd0,2)/boot/openbios.multiboot module (hd0,2)/boot/openfirmware.dict Note: change (hd0,2) to the partition you copied openbios and forth.dict to. To boot OpenBIOS from LinuxBIOS/etherboot, you can either use "openbios" or "openbios.full": o openbios is the pure kernel that loads the dictionary from a hardcoded address in flash memory (0xfffe0000) o openbios.full also includes the dictionary directly so that it can be easily used from etherboot or the LinuxBIOS builtin ELF loader without taking care of the dictionary = Dictionary Format = The dictionary is a linked list of forth word definitions. Each forth word in this list looks like the following: name length of name in bytes + 0x80 align with 0's flags (bit 7 set) LFA CFA PFA When the forth interpreter looks for a certain word, it reads the variable last that always points to the last defined word and iterates over the list until it finds an appropriate word. = Glossary = == Dictionary == * LFA == link field address (backlink) * CFA == code field address ("word type") * PFA == program field address (definitions) == Forth Engine == * TIB == text input buffer * inner interpreter: interprets dictionary, does threading * outer interpreter: "user" interpreter, reads forth words from user. e95b30c0da628c37c5ffddd04283f00ed8e03838 316 315 2006-10-06T00:27:09Z WikiSysop 1 /* Building and Usage */ wikitext text/x-wiki = What is BeginAgain? = BeginAgain is the Forth kernel, basically the heart of OpenBIOS. Right after the system is far enough to execute any C code, this kernel will take over control and execute the forth code part of OpenBIOS. BeginAgain supports the Forth language command group of IEEE 1275-1994 and passes the Hayes ANS forth compliance test. = How does BeginAgain work? = The OpenBIOS forth core "BeginAgain" is split into a forth kernel written in C and a forth dictionary which operated on by the kernel. BeginAgain's approach is indirect threading. Forth words are compiled to execution tokens (pointers to the words dictionary entries). Only the prim words (minimal language support) are available as native C code. When building the forth core, you get different versions of the forth kernel: * a "hosted" unix binary. This binary can be used on a unix system: ** to execute a forth dictionary from a file. This can be used for testing openbios code in a development environment on a unix host. ** to create a dictionary file. Such a dictionary file sets up all of the forth language. Primitives are indexed to save relocations. The default is to create a forth dictionary forth.dict from forth/start.fs. This file includes all of the basic forth language constructs from forth/bootstrap.fs and starts the interpreter. To achieve this, the hosted unix version contains a basic set of forth words coded in C that allow creating a full dictionary. * a varying number of target specific binaries. On x86 you can start openbios for example from GRUB or LinuxBIOS. They are all based on the same forth engine consisting of a dictionary scheduler, primitive words needed to build the forth environment, 2 stacks and a simple set of console functions. These binaries can not be started directly in the unix host environment. = Building and Using BeginAgain = == Requirements == * gcc * grub or any other multiboot loader to run the standalone binary "openbios.multiboot" == Building and Usage == * make this builds "openbios.multiboot", the standalone image and "unix", the hosted image. Additionally it creates a forth dictionary file from forth/start.fs. All generated files are written to the absolute directory held by the variable BUILDDIR, which defaults to obj-[platform]. Some compile time parameters can be tweaked in include/config.h * use "unix" to create a forth dictionary on your own: $ ./unix -Iforth start.fs creates the file forth.dict from forth source forth/start.fs. * use "unix" to run a created dictionary: $ ./unix forth.dict This is useful for testing. * booting openbios You can boot openbios i.e. in grub. Add the following lines to your menu.lst: title openbios kernel (hd0,2)/boot/openbios.multiboot module (hd0,2)/boot/openfirmware.dict Note: change (hd0,2) to the partition you copied openbios and forth.dict to. To boot OpenBIOS from LinuxBIOS/etherboot, you can either use "openbios" or "openbios.full": * openbios is the pure kernel that loads the dictionary from a hardcoded address in flash memory (0xfffe0000) * openbios.full also includes the dictionary directly so that it can be easily used from etherboot or the LinuxBIOS builtin ELF loader without taking care of the dictionary = Dictionary Format = The dictionary is a linked list of forth word definitions. Each forth word in this list looks like the following: name length of name in bytes + 0x80 align with 0's flags (bit 7 set) LFA CFA PFA When the forth interpreter looks for a certain word, it reads the variable last that always points to the last defined word and iterates over the list until it finds an appropriate word. = Glossary = == Dictionary == * LFA == link field address (backlink) * CFA == code field address ("word type") * PFA == program field address (definitions) == Forth Engine == * TIB == text input buffer * inner interpreter: interprets dictionary, does threading * outer interpreter: "user" interpreter, reads forth words from user. ab58fc1bffa191773eccecced09daf2ead415e7a 317 316 2006-10-06T00:59:50Z WikiSysop 1 /* How does BeginAgain work? */ wikitext text/x-wiki = What is BeginAgain? = BeginAgain is the Forth kernel, basically the heart of OpenBIOS. Right after the system is far enough to execute any C code, this kernel will take over control and execute the forth code part of OpenBIOS. BeginAgain supports the Forth language command group of IEEE 1275-1994 and passes the Hayes ANS forth compliance test. = How does BeginAgain work? = The OpenBIOS forth core "BeginAgain" is split into a forth kernel written in C and a forth dictionary which operated on by the kernel. BeginAgain's approach is indirect threading. Forth words are compiled to execution tokens (pointers to the words dictionary entries). Only the prim words (minimal language support) are available as native C code. When building the forth core, you get different versions of the forth kernel: * a "hosted" unix binary. This binary can be used on a unix system: ** to execute a forth dictionary from a file. This can be used for testing openbios code in a development environment on a unix host. ** to create a dictionary file. Such a dictionary file sets up all of the forth language. Primitives are indexed to save relocations. The default is to create a forth dictionary forth.dict from forth/start.fs. This file includes all of the basic forth language constructs from forth/bootstrap.fs and starts the interpreter. To achieve this, the hosted unix version contains a basic set of forth words coded in C that allow creating a full dictionary. * a varying number of target specific binaries. On x86 you can start openbios for example from GRUB or LinuxBIOS. They are all based on the same forth engine consisting of a dictionary scheduler, primitive words needed to build the forth environment, 2 stacks and a simple set of console functions. These binaries can not be started directly in the unix host environment. = Building and Using BeginAgain = == Requirements == * gcc * grub or any other multiboot loader to run the standalone binary "openbios.multiboot" == Building and Usage == * make this builds "openbios.multiboot", the standalone image and "unix", the hosted image. Additionally it creates a forth dictionary file from forth/start.fs. All generated files are written to the absolute directory held by the variable BUILDDIR, which defaults to obj-[platform]. Some compile time parameters can be tweaked in include/config.h * use "unix" to create a forth dictionary on your own: $ ./unix -Iforth start.fs creates the file forth.dict from forth source forth/start.fs. * use "unix" to run a created dictionary: $ ./unix forth.dict This is useful for testing. * booting openbios You can boot openbios i.e. in grub. Add the following lines to your menu.lst: title openbios kernel (hd0,2)/boot/openbios.multiboot module (hd0,2)/boot/openfirmware.dict Note: change (hd0,2) to the partition you copied openbios and forth.dict to. To boot OpenBIOS from LinuxBIOS/etherboot, you can either use "openbios" or "openbios.full": * openbios is the pure kernel that loads the dictionary from a hardcoded address in flash memory (0xfffe0000) * openbios.full also includes the dictionary directly so that it can be easily used from etherboot or the LinuxBIOS builtin ELF loader without taking care of the dictionary = Dictionary Format = The dictionary is a linked list of forth word definitions. Each forth word in this list looks like the following: name length of name in bytes + 0x80 align with 0's flags (bit 7 set) LFA CFA PFA When the forth interpreter looks for a certain word, it reads the variable last that always points to the last defined word and iterates over the list until it finds an appropriate word. = Glossary = == Dictionary == * LFA == link field address (backlink) * CFA == code field address ("word type") * PFA == program field address (definitions) == Forth Engine == * TIB == text input buffer * inner interpreter: interprets dictionary, does threading * outer interpreter: "user" interpreter, reads forth words from user. 09f1c6bf251d9750bfb344643be5d008f408829d FCODE suite 0 17 208 207 2006-10-06T01:09:32Z WikiSysop 1 /* Local Value Support */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents) Five files: One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality], the second adds a development-time facility, the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) and the fourth combines the "Global" variant behavior with the development-time facility. The fifth allows the choice of combinations to be governed by command-line switches, and is probably the best to use with Make-files in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 === Todo === * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == === The suite of unit-test cases === This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 22efd543d6b62d609aa3380e1323e88323317ff5 209 208 2006-10-06T01:11:21Z WikiSysop 1 /* Local Value Support */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents) Five files: * One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 === Todo === * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == === The suite of unit-test cases === This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 40cf1b5566fabc948cc3ab38ad148240154c2999 210 209 2006-10-06T01:11:44Z WikiSysop 1 /* Local Value Support */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: LoclValSupport.tar.bz2 === Todo === * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == === The suite of unit-test cases === This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 2e38894a42c824db20b81b2b8b2cedfefd5709f6 211 210 2006-10-06T01:12:04Z WikiSysop 1 /* Local Value Support */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === * A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a collection of all of them in a single convenient location. Available as a Tar-File: StillToBeDonesList.tar.bz2 == Unit-Test Suite == === The suite of unit-test cases === This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] b18c1ef7fb476183e4d8318b8ea4f310c98c94e0 212 211 2006-10-06T01:12:55Z WikiSysop 1 /* Todo */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the accumulation of test-cases that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called TokMisc/OldTkzr are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: TestSrc.tar.bz2 === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 45c5ae497f157bf615070fd213b671194252edc2 213 212 2006-10-06T01:14:12Z WikiSysop 1 /* The suite of unit-test cases */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: AutoExec automates the execution, and AutoCompare automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: TestTools.tar.bz2 == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] c89a4a3a73c3e3d41fa8c8e25953fb03dd264fd6 214 213 2006-10-06T01:15:35Z WikiSysop 1 /* Test Tools */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 88e6d4a53b9bf716b365d3c4e2916dd83f1080a3 215 214 2006-10-06T01:32:46Z WikiSysop 1 /* Source Code */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] c3d493ad08d5d842576eab2068ba18bcb0d42f81 216 215 2006-10-06T01:33:22Z WikiSysop 1 /* Documentation */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] d0f0a88615fa39b8db9aaaece69f4c53d715c52d 217 216 2006-10-06T01:33:38Z WikiSysop 1 /* Executables for three platforms */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 0d960fe9e9dff0e2890484a6f2edd64595aff81a 218 217 2006-10-06T01:33:51Z WikiSysop 1 /* Executables for three platforms */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] dd8d56d98e45d78421351d83fe23abbc5b9cacae 219 218 2006-10-06T01:34:23Z WikiSysop 1 /* Local Value Support */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] 2bd4c610a4942607856b52887ac35e26956e0161 220 219 2006-10-06T01:34:39Z WikiSysop 1 /* Todo */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] ecab140a80067c9b28132c4233e36a22681eb307 221 220 2006-10-06T01:34:54Z WikiSysop 1 /* Unit-Test Suite */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] f854164b92f789cc22cd98ae3db08308e10af0bd 222 221 2006-10-06T01:50:35Z WikiSysop 1 /* Unit-Test Suite Logs */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/toke-0.6.10 coverage report for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0.0 coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 122591f47990cb186ba2ae9fdedabcfe9307d639 223 222 2006-10-06T01:52:12Z WikiSysop 1 /* Coverage Reports */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available d8a1626233faf9546d7ee4ecd8154041d5b2dc86 224 223 2006-10-06T01:53:47Z WikiSysop 1 /* Documentation */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 30f2b22f5bd49de7c71c0201987450e5294c048f 225 224 2006-10-06T01:54:09Z WikiSysop 1 /* Documentation */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 98458a7075ccce6088ec93b5067c357e51521321 226 225 2006-10-06T01:54:47Z WikiSysop 1 /* Downloading the OpenBIOS FCode Suite */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21) === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 70503411342deff9e121d86b9f3c2cf784c5960f 227 226 2006-10-06T01:55:38Z WikiSysop 1 /* Downloading the OpenBIOS FCode Suite */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. We have not yet fully proofread and integrated these changes into the official OpenBIOS development tree, but in the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the OpenBIOS mailinglist. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 5a0487b26bb276947fa76de9ef672f5f2ed65d26 228 227 2006-10-06T01:58:34Z WikiSysop 1 /* What is the OpenBIOS FCODE Suite? */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 5eff17ebb3092e4ce20bacb8e67a0d2309fdd463 229 228 2006-10-06T01:58:42Z WikiSysop 1 /* What is the OpenBIOS FCODE Suite? */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: A tokenizer, a detokenizer, and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly. These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available ce13dd054f794335feaaba1f1c74169b94faec0f 230 229 2006-10-06T10:46:06Z Stepan 2 /* What is the OpenBIOS FCODE Suite? */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself. These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/data/fcodesuite/Tokenizer Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/TokzrNewSrcFiles.tar.bz2 TokzrNewSrcFiles.tar.bz2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 2464f4e04038fdb53b37581fa02b4b01d99c0f88 News 0 24 319 2006-10-06T01:17:06Z WikiSysop 1 wikitext text/x-wiki '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here b368fc94b25c4e638287b74f332b45526464e823 320 319 2006-10-06T10:39:19Z Stepan 2 wikitext text/x-wiki '''FCODE suite 1.0.1 available''' (2006-09-21) Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here 08da2c62b1e410b2eef769b0de5427248c5bac0a 321 320 2006-10-06T10:40:46Z Stepan 2 wikitext text/x-wiki '''FCODE suite 1.0.1 available''' (2006-09-21) Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here '''older news have not been added to the wiki yet. please notify [[User:Stepan|Stefan Reinauer]] if you need those.''' 17c41acfada4db870df2b78f12956486d6c218fc Welcome to OpenBIOS 0 2 15 14 2006-10-06T01:17:43Z WikiSysop 1 /* News */ wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here [[News|all news]] == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. dd8402ce5bf3e9d754eb223eb37a1ae626b1761b 16 15 2006-10-06T01:18:00Z WikiSysop 1 /* News */ wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here [[News|[older news]]] == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. c15872cb717e3e2210b80ac9a8647a010593a89c 17 16 2006-10-06T01:45:16Z WikiSysop 1 /* News */ wikitext text/x-wiki OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''FCODE suite 1.0.1 available''' (2006-09-21) Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, better error reporting and some bug fixes. '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]]. [[News|[older news]]] == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. 53d9fe27403ae632d5bcacbebd94ff8586eb8a4d 18 17 2006-10-06T09:36:39Z Stepan 2 wikitext text/x-wiki __NOTOC__ OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''FCODE suite 1.0.1 available''' (2006-09-21) Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, better error reporting and some bug fixes. '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]]. [[News|[older news]]] == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. 68c3f3b7cfc26871b7af1b343a0004d858baab63 19 18 2006-10-06T10:38:44Z Stepan 2 update of news wikitext text/x-wiki __NOTOC__ OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''FCODE suite 1.0.1 available''' (2006-09-21) Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]]. [[News|[older news]]] == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. f65050ac8c6ef9be905c9d716c3d7ba96331d52c MediaWiki:Userlogin 8 8 77 76 2006-10-06T01:28:07Z WikiSysop 1 wikitext text/x-wiki Log in f7c400ed695f898b8ee9d21664aa17b5bb693828 MediaWiki:Anontalkpagetext 8 3 49 48 2006-10-06T01:28:28Z WikiSysop 1 wikitext text/x-wiki ----''This is the discussion page for an anonymous user who has not created an account yet or who does not use it. We therefore have to use the numerical IP address to identify him/her. Such an IP address can be shared by several users. If you are an anonymous user and feel that irrelevant comments have been directed at you, please [[Special:Userlogin|log in]] to avoid future confusion with other anonymous users.'' 6e9e3924152c4761a289668c207689e81ea5ce11 MediaWiki:Nocreatetext 8 5 53 52 2006-10-06T01:28:47Z WikiSysop 1 wikitext text/x-wiki This site has restricted the ability to create new pages. You can go back and edit an existing page, or [[Special:Userlogin|log in]]. 61f17ba88406ff8ea58d4982a6d1ff9ebbe4042b MediaWiki:Nosuchuser 8 6 55 54 2006-10-06T01:29:03Z WikiSysop 1 wikitext text/x-wiki There is no user by the name "$1". Check your spelling. 6ba553bc5c26369737785821c5f638a089167e05 OpenBIOS 0 16 128 127 2006-10-06T01:29:55Z WikiSysop 1 /* OpenBIOS */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the FCode Suite page (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. 0fca65cdc6d35699dfbbbe6d488634817a7d5fde 129 128 2006-10-06T01:30:18Z WikiSysop 1 /* FCode Suite */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: detok-0.6.1 (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. b4c4cde32ad271104c137f5ae27afe769b2cf75c 130 129 2006-10-06T01:30:43Z WikiSysop 1 /* detok */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: toke-0.6.10 (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. 13086770804fca7fc5eae778d1f07a90c5266934 131 130 2006-10-06T01:31:02Z WikiSysop 1 /* toke */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: BeginAgain 1.1 (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. c266939ddabef5e5b3f8d2da00c7f34081252b24 132 131 2006-10-06T01:31:20Z WikiSysop 1 /* kernel */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. Information about /dev/bios is kept on the /dev/bios status page for historical reasons. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. 9a56e1aa61fdc6ef62a54ec06f55f6f48574cd7c 133 132 2006-10-06T01:31:53Z WikiSysop 1 /* /dev/bios */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get romheaders.tar.gz. ea8e0c27bebc42e877540c1719bd5a57880f6b7c 134 133 2006-10-06T01:32:05Z WikiSysop 1 /* romheaders */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/bin/romheaders.tar.gz romheaders.tar.gz]. adc9296d7bc8c37c77e99ff42aa9ec3d017e4d86 135 134 2006-10-06T11:02:23Z Stepan 2 /* romheaders */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the flashrom utility from LinuxBIOSv2/util/flashrom. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. 0918aad65fedc57fa433d1657e9cfd629c6f359b 136 135 2006-10-06T11:03:05Z Stepan 2 /* /dev/bios */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. 95d3391e63d90aa9c3dc57b067eba58a3228d2a3 Contact us 0 10 85 84 2006-10-06T02:22:50Z WikiSysop 1 /* Mailinglist */ wikitext text/x-wiki == The OpenBIOS Project == OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, documentation. * need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this. We of course appreciate any help, hints, patches, comments, etc. NOTE: Please read our [[Project Statement]]. == Mailinglist == Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome. ca96e3873c6ab614e7e2629d5f740aff3d6fde81 User:Stepan 2 18 275 274 2006-10-06T10:42:13Z Stepan 2 /* About Stefan R. */ wikitext text/x-wiki === About Stefan Reinauer === Stefan founded the OpenBIOS project in 1997 and works on firmware related issues ever since. His company [http://www.coresystems.de/ coresystems GmbH] offers a variety of firmware and lowlevel related services. [[Image:Stefan.jpg]] See http://www.linuxbios.org/ for more information on LinuxBIOS Contact Stefan at stepan at coresystems dot eu Have a look at Stefan's private web page at http://www.stefan-reinauer.de/ 478019a01ef5647ee834926b8efa4947f4ae8808 On the Net 0 20 300 299 2006-10-06T10:48:02Z Stepan 2 /* Open Firmware Companies/Vendor support */ wikitext text/x-wiki __NOTOC__ == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://linuxbios.org/ LinuxBIOS]) == Other Open Source Firmware Implementations == * [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * redboot * SLOF * Open Hackware * SUN OpenBoot * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * [http://www.qemu.com/ QEMU] * [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization * [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator * [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux * Hypervisor * ... 26b6efb3386d22718f730a9ad0cc0774f3146d02 Forth/FCode 0 19 281 280 2006-10-06T10:48:50Z Stepan 2 /* What is Forth? */ wikitext text/x-wiki __NOTOC__ = What is Forth? = From the [http://www.faqs.org/faqs/computer-lang/forth-faq/part1/ Forth FAQ]: Forth is a stack-based, extensible language without type-checking. It is probably best known for its "reverse Polish" (postfix) arithmetic notation, familiar to users of Hewlett-Packard calculators: to add two numbers in Forth, you would type 3 5 + instead of 3+5. The fundamental program unit in Forth is the "word": a named data item, subroutine, or operator. Programming in Forth consists of defining new words in terms of existing ones. = Why and where is Forth used? = Although invented in 1970, Forth became widely known with the advent of personal computers, where its high performance and economy of memory were attractive. These advantages still make Forth popular in embedded microcontroller systems, in locations ranging from the Space Shuttle to the bar-code reader used by your Federal Express driver. Forth's interactive nature streamlines the test and development of new hardware. Incremental development, a fast program-debug cycle, full interactive access to any level of the program, and the ability to work at a high "level of abstraction," all contribute to Forth's reputation for very high programmer productivity. These, plus the flexibility and malleability of the language, are the reasons most cited for choosing Forth for embedded systems. Find more information [http://www.complang.tuwien.ac.at/forth/faq/why-forth here]. = FCode = FCode is a Forth dialect compliant to ANS Forth, that is available in two different forms: source and bytecode. FCode bytecode is the compiled form of FCode source. = Why bytecode? = Bytecode is small and efficient. And an evaluator (bytecode virtual machine) is almost trivial to implement. For example, putting a 1 to the stack only takes one byte in an FCode bytecode binary. This is especially valuable on combined system or expansion hardware roms where the available space is limited. b38da3375e862c787bf4c5860aa8998c17d0db65 FlashRom 0 25 331 2006-10-06T10:53:42Z Stepan 2 wikitext text/x-wiki __NOTOC__ = Flash Updates in Linux = Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update. Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://linuxbios.org LinuxBIOS project] and evolved to work with non-SIS chipsets. [[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel. e738031a7d228a8701b448a9d58c5acf59c24926 332 331 2006-10-06T11:00:31Z Stepan 2 /* Flash Updates in Linux */ wikitext text/x-wiki __NOTOC__ = Flash Updates in Linux = Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update. Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://linuxbios.org LinuxBIOS project] and evolved to work with non-SIS chipsets. [[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel. You can download the latest version of '''flashrom''' [http://www.openbios.org/viewcvs/trunk/LinuxBIOSv2/util/flashrom.tar.gz?view=tar from the LinuxBIOSv2 svn repository] 0508896fb1de9690ec15d56567d50e615f559a58 OpenBIOS 0 16 137 136 2006-10-06T11:03:16Z Stepan 2 /* /dev/bios */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. 2c6b90fed2721fa096cf63dd9367275b73050162 138 137 2006-10-06T11:03:38Z Stepan 2 /* kernel */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. 9e2461e206eeee35844309f13a7bbf176c9a61a2 139 138 2006-10-06T11:03:51Z Stepan 2 /* toke */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. 05a74f4a198a9b2760bd76581c1c51bd808a2886 140 139 2006-10-06T11:04:01Z Stepan 2 /* detok */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [http://www.openbios.org/development/fcode.html FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/data/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. 7318abc46c537571f15e214cefd972ea9c389770 141 140 2006-10-06T11:04:35Z Stepan 2 /* FCode Suite */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [FCODE suite|FCode Suite page] (2006-08-08) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/data/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. 5654bd7e0bc79937819dd45e3aaca945173e7fcd 142 141 2006-10-06T11:04:49Z Stepan 2 /* FCode Suite */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/data/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. ccf62cb02ba91aac4f2d76a4bee5505b15d2187c 143 142 2006-10-06T11:05:05Z Stepan 2 /* FCode Suite */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/data/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. 11c21c7b1716330b65831c701ec74499a908ea57 144 143 2006-10-06T11:05:20Z Stepan 2 /* OpenBIOS */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/data/bin/OpenBIOS-0.99.1.tar.bz2 OpenBIOS 0.99.1] (2004-11-09) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/data/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. a234af1afc98aa3b5744484a8a351cb42c810dbc 145 144 2006-10-14T22:20:40Z Stepan 2 /* OpenBIOS */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/data/bin/detok-0.6.1.tar.gz detok-0.6.1] (2005-03-10) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. b599c34c5d75def75b8c05bd99c02c761c0219f4 146 145 2006-10-14T22:21:47Z Stepan 2 /* detok */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/data/bin/toke-0.6.10.tar.gz toke-0.6.10] (2005-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. 74a07f324db0d3073645a1e6b9f2742ccaa8da9f Welcome to OpenBIOS 0 2 20 19 2006-10-06T11:12:59Z Stepan 2 wikitext text/x-wiki __NOTOC__ OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. == News == '''FCODE suite 1.0.1 available''' (2006-09-21) Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released their OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]]. [[News|[older news]]] == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. dbd9428aed0d85274cbed4c32aae75545f1cddba 21 20 2006-10-10T13:03:13Z Stepan 2 wikitext text/x-wiki __NOTOC__ OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == '''FCODE suite 1.0.1 available''' (2006-09-21) Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released their OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]]. [[News|[older news]]] |} 6e34d9713be66cac35988221e9f1d1efc463a3b2 22 21 2006-10-10T13:04:06Z Stepan 2 /* News */ wikitext text/x-wiki __NOTOC__ OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.1 available''' (2006-09-21) Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released their OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]]. [[News|[older news]]] </small> |} 60c22ff959d8200903f6ed1712280346e12228d0 23 22 2006-10-10T13:07:25Z Stepan 2 /* News */ wikitext text/x-wiki __NOTOC__ OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by coresystems GmbH '''FCODE suite 1.0.1 available''' (2006-09-21) David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]]. [[News|[older news]]] </small> |} 26c22ba76a42b6f07d753b3a774c92ab67e44a29 24 23 2006-10-10T13:09:08Z Stepan 2 /* News */ wikitext text/x-wiki __NOTOC__ OpenBIOS is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]]. [[News|[older news]]] </small> |} acabffd361717026a72381003c77d46ee6624cf9 25 24 2006-10-10T13:10:38Z Stepan 2 wikitext text/x-wiki __NOTOC__ <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]]. [[News|[older news]]] </small> |} 64b7738f2d8fd944cf7549922d4f99dceeba9889 26 25 2006-10-10T13:11:37Z Stepan 2 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find [[FCODE suite|details and binaries here]]. [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 83203456b83ee92ea65c3a3cad62cafd7e81b7d9 News 0 24 322 321 2006-10-06T11:13:18Z Stepan 2 wikitext text/x-wiki '''FCODE suite 1.0.1 available''' (2006-09-21) Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released their OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here '''older news have not been added to the wiki yet. please notify [[User:Stepan|Stefan Reinauer]] if you need those.''' 05714d3853f05f53c2dfffafd8f3cc7baf33d21b 323 322 2006-10-06T11:20:12Z Stepan 2 wikitext text/x-wiki '''FCODE suite 1.0.1 available''' (2006-09-21) Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released their OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here '''Sparc32 support in development''' (2006-05-05) OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project. '''OpenBIOS switched to Subversion''' (2006-04-26) See the [[Download|development repository]] for more information. '''older news have not been added to the wiki yet. please notify [[User:Stepan|Stefan Reinauer]] if you need those.''' 6efb88e24ebd447e3b7f5edb518c44c2473a49c7 324 323 2006-10-06T11:38:26Z Stepan 2 wikitext text/x-wiki '''FCODE suite 1.0.1 available''' (2006-09-21) Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released their OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here '''Sparc32 support in development''' (2006-05-05) OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project. '''OpenBIOS switched to Subversion''' (2006-04-26) See the [[Download|development repository]] for more information. '''Bugfix version of tokenizer toke''' (2005-10-15) Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New version of toke''' (2005-10-05) Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New versions of toke and detok''' (2005-03-10) New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1. '''Stallman calls for action on Free BIOS''' (2005-02-26) FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS. ''' Portability and cross development''' (2005-01-12) OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC. '''OpenBIOS boots, part II''' (2004-08-01) After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq. '''Linux Tag''' (2004-06-27) The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver. '''OpenBIOS boots''' (2004-05-23) After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86). '''IDE support''' (2004-01-23) Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon. '''Device and Client Interface''' (2004-01-10) OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux. '''Bitkeeper repository''' (2003-12-20) Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree. '''Toke and Detok update''' (2003-11-29) Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now. '''OpenBIOS forth kernel 1.1''' (2003-10-12) After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system. '''OpenBIOS forth kernel released''' (2003-09-16) After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain". '''New domain: openbios.org!''' (2003-08-23) We got it! After many years of hazzling with a domain grabber we finally got the domain openbios.org. '''dictionary dumping''' (2002-10-16) OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[mailing list|mailing list archive]]. '''LinuxFund.org''' (2002-07-04) OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project. '''toke and detok update''' (2002-05-26) Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs. '''toke 0.2 released''' (2002-03-20) The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing. '''toke 0.1 released''' (2002-03-04) Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it. '''detok 0.3 released''' (2002-02-26) The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%. '''/dev/bios 0.3.2 released''' 2002-02-19 After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets. See the /dev/bios page for details. '''new version of /dev/bios available''' 2002-02-15 The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets. '''new version of feval released''' 2001-12-16 FCode evaluator feval-0.2.6 released. This is a bug fix release. Check the status page for more details. '''Talk to us LIVE!''' 2001-12-03 Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone) '''new version of detok released''' 2001-12-02 FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details. '''OpenBIOS is now under control of CVS''' 2001-11-12 The OpenBIOS development CVS is up and running. '''new version of feval released''' 2001-11-08 FCode evaluator feval-0.2.5 released. This version has preliminary package support. Check the status page for more details. '''new version of detok released''' 2001-10-15 FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error. '''new version of detok and feval released''' (2001-09-16) Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now. '''we now have a detokenizer''' (2001-09-09) There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite. '''general news on bios-coding''' (2000-02-13) The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/. '''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.''' 1a5f175af92f9ff411d879bfb5f40ec89ff7b60f 325 324 2006-10-06T12:28:03Z Stepan 2 wikitext text/x-wiki '''FCODE suite 1.0.1 available''' (2006-09-21) Once again, David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released their OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here '''Sparc32 support in development''' (2006-05-05) OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project. '''OpenBIOS switched to Subversion''' (2006-04-26) See the [[Download|development repository]] for more information. '''Bugfix version of tokenizer toke''' (2005-10-15) Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New version of toke''' (2005-10-05) Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New versions of toke and detok''' (2005-03-10) New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1. '''Stallman calls for action on Free BIOS''' (2005-02-26) FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS. ''' Portability and cross development''' (2005-01-12) OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC. '''OpenBIOS boots, part II''' (2004-08-01) After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq. '''Linux Tag''' (2004-06-27) The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver. '''OpenBIOS boots''' (2004-05-23) After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86). '''IDE support''' (2004-01-23) Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon. '''Device and Client Interface''' (2004-01-10) OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux. '''Bitkeeper repository''' (2003-12-20) Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree. '''Toke and Detok update''' (2003-11-29) Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now. '''OpenBIOS forth kernel 1.1''' (2003-10-12) After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system. '''OpenBIOS forth kernel released''' (2003-09-16) After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain". '''New domain: openbios.org!''' (2003-08-23) We got it! After many years of hazzling with a domain grabber we finally got the domain [http://openbios.org/ openbios.org]. '''dictionary dumping''' (2002-10-16) OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[Mailinglist|mailing list archive]]. '''LinuxFund.org''' (2002-07-04) OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project. '''toke and detok update''' (2002-05-26) Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs. '''toke 0.2 released''' (2002-03-20) The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing. '''toke 0.1 released''' (2002-03-04) Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it. '''detok 0.3 released''' (2002-02-26) The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%. '''/dev/bios 0.3.2 released''' (2002-02-19) After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets. '''new version of /dev/bios available''' (2002-02-15) The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets. '''new version of feval released''' (2001-12-16) FCode evaluator feval-0.2.6 released. This is a bug fix release. '''Talk to us LIVE!''' (2001-12-03) Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone) '''new version of detok released''' (2001-12-02) FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details. '''OpenBIOS is now under control of CVS''' (2001-11-12) The OpenBIOS development CVS is up and running. '''new version of feval released''' (2001-11-08) FCode evaluator feval-0.2.5 released. This version has preliminary package support. '''new version of detok released''' (2001-10-15) FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error. '''new version of detok and feval released''' (2001-09-16) Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now. '''we now have a detokenizer''' (2001-09-09) There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite. '''general news on bios-coding''' (2000-02-13) The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/. '''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.''' cb544ab14350a2c155390f2d5106a0e3179ac70d 326 325 2006-10-10T13:08:12Z Stepan 2 wikitext text/x-wiki '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by coresystems GmbH '''FCODE suite 1.0.1 available''' (2006-09-21) David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here '''Sparc32 support in development''' (2006-05-05) OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project. '''OpenBIOS switched to Subversion''' (2006-04-26) See the [[Download|development repository]] for more information. '''Bugfix version of tokenizer toke''' (2005-10-15) Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New version of toke''' (2005-10-05) Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New versions of toke and detok''' (2005-03-10) New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1. '''Stallman calls for action on Free BIOS''' (2005-02-26) FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS. ''' Portability and cross development''' (2005-01-12) OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC. '''OpenBIOS boots, part II''' (2004-08-01) After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq. '''Linux Tag''' (2004-06-27) The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver. '''OpenBIOS boots''' (2004-05-23) After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86). '''IDE support''' (2004-01-23) Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon. '''Device and Client Interface''' (2004-01-10) OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux. '''Bitkeeper repository''' (2003-12-20) Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree. '''Toke and Detok update''' (2003-11-29) Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now. '''OpenBIOS forth kernel 1.1''' (2003-10-12) After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system. '''OpenBIOS forth kernel released''' (2003-09-16) After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain". '''New domain: openbios.org!''' (2003-08-23) We got it! After many years of hazzling with a domain grabber we finally got the domain [http://openbios.org/ openbios.org]. '''dictionary dumping''' (2002-10-16) OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[Mailinglist|mailing list archive]]. '''LinuxFund.org''' (2002-07-04) OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project. '''toke and detok update''' (2002-05-26) Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs. '''toke 0.2 released''' (2002-03-20) The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing. '''toke 0.1 released''' (2002-03-04) Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it. '''detok 0.3 released''' (2002-02-26) The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%. '''/dev/bios 0.3.2 released''' (2002-02-19) After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets. '''new version of /dev/bios available''' (2002-02-15) The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets. '''new version of feval released''' (2001-12-16) FCode evaluator feval-0.2.6 released. This is a bug fix release. '''Talk to us LIVE!''' (2001-12-03) Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone) '''new version of detok released''' (2001-12-02) FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details. '''OpenBIOS is now under control of CVS''' (2001-11-12) The OpenBIOS development CVS is up and running. '''new version of feval released''' (2001-11-08) FCode evaluator feval-0.2.5 released. This version has preliminary package support. '''new version of detok released''' (2001-10-15) FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error. '''new version of detok and feval released''' (2001-09-16) Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now. '''we now have a detokenizer''' (2001-09-09) There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite. '''general news on bios-coding''' (2000-02-13) The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/. '''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.''' ac55d09ef69f78f6de54e662ee0b51ae96b4f23e 327 326 2006-10-10T13:08:43Z Stepan 2 wikitext text/x-wiki '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here '''Sparc32 support in development''' (2006-05-05) OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project. '''OpenBIOS switched to Subversion''' (2006-04-26) See the [[Download|development repository]] for more information. '''Bugfix version of tokenizer toke''' (2005-10-15) Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New version of toke''' (2005-10-05) Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New versions of toke and detok''' (2005-03-10) New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1. '''Stallman calls for action on Free BIOS''' (2005-02-26) FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS. ''' Portability and cross development''' (2005-01-12) OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC. '''OpenBIOS boots, part II''' (2004-08-01) After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq. '''Linux Tag''' (2004-06-27) The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver. '''OpenBIOS boots''' (2004-05-23) After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86). '''IDE support''' (2004-01-23) Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon. '''Device and Client Interface''' (2004-01-10) OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux. '''Bitkeeper repository''' (2003-12-20) Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree. '''Toke and Detok update''' (2003-11-29) Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now. '''OpenBIOS forth kernel 1.1''' (2003-10-12) After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system. '''OpenBIOS forth kernel released''' (2003-09-16) After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain". '''New domain: openbios.org!''' (2003-08-23) We got it! After many years of hazzling with a domain grabber we finally got the domain [http://openbios.org/ openbios.org]. '''dictionary dumping''' (2002-10-16) OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[Mailinglist|mailing list archive]]. '''LinuxFund.org''' (2002-07-04) OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project. '''toke and detok update''' (2002-05-26) Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs. '''toke 0.2 released''' (2002-03-20) The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing. '''toke 0.1 released''' (2002-03-04) Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it. '''detok 0.3 released''' (2002-02-26) The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%. '''/dev/bios 0.3.2 released''' (2002-02-19) After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets. '''new version of /dev/bios available''' (2002-02-15) The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets. '''new version of feval released''' (2001-12-16) FCode evaluator feval-0.2.6 released. This is a bug fix release. '''Talk to us LIVE!''' (2001-12-03) Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone) '''new version of detok released''' (2001-12-02) FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details. '''OpenBIOS is now under control of CVS''' (2001-11-12) The OpenBIOS development CVS is up and running. '''new version of feval released''' (2001-11-08) FCode evaluator feval-0.2.5 released. This version has preliminary package support. '''new version of detok released''' (2001-10-15) FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error. '''new version of detok and feval released''' (2001-09-16) Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now. '''we now have a detokenizer''' (2001-09-09) There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite. '''general news on bios-coding''' (2000-02-13) The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/. '''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.''' d1c80e9c2e7840fe71bf7ebe71b6ac0c165b60d1 Licensing 0 14 109 108 2006-10-06T13:03:44Z WikiSysop 1 /* View the license */ wikitext text/x-wiki = OpenBIOS Licensing = OpenBIOS is licensed under the GNU General Public License v2. If you adapt OpenBIOS to your needs, please contact us with your changes so that you can contribute your changes back to the community. = Why GPL? = We see the GPL giving OpenBIOS a big competitive advantage over other firmware solutions: * As a hardware vendor you get the warranty that nobody hiddenly improves the code you have been contributing without giving those improvements back. Thus, GPL guarantees that you keep control over your work and contributions. * End users / customers get great benefit from OpenBIOS being GPL licensed: The GPL insures customers that a given platform will act like all other OpenBIOS platforms. BSD is a negative marketing point where BIOS is concerned. = View the license = Have a look at the [[About:License complete license]] 3191c4f4b20d546307544587b8eb63011b0faa98 110 109 2006-10-06T13:03:59Z WikiSysop 1 /* View the license */ wikitext text/x-wiki = OpenBIOS Licensing = OpenBIOS is licensed under the GNU General Public License v2. If you adapt OpenBIOS to your needs, please contact us with your changes so that you can contribute your changes back to the community. = Why GPL? = We see the GPL giving OpenBIOS a big competitive advantage over other firmware solutions: * As a hardware vendor you get the warranty that nobody hiddenly improves the code you have been contributing without giving those improvements back. Thus, GPL guarantees that you keep control over your work and contributions. * End users / customers get great benefit from OpenBIOS being GPL licensed: The GPL insures customers that a given platform will act like all other OpenBIOS platforms. BSD is a negative marketing point where BIOS is concerned. = View the license = Have a look at the [[About:License|complete license]] f1d2cd3ff8777ac18b0d3796ddd351f2fbaa2ee4 About:License 0 26 338 2006-10-06T13:07:17Z WikiSysop 1 wikitext text/x-wiki = GNU GENERAL PUBLIC LICENSE = Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. == Preamble == The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. == TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION == '''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. '''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. '''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. '''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. '''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. '''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. '''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. '''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. '''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. '''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. '''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. == NO WARRANTY == '''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. '''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. 82c58f498bf7e825389378e125fec42ec13e5c9f 339 338 2006-10-06T13:07:52Z WikiSysop 1 /* GNU GENERAL PUBLIC LICENSE */ wikitext text/x-wiki __NOTOC__ = GNU GENERAL PUBLIC LICENSE = Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. == Preamble == The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. == TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION == '''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. '''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. '''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. '''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. '''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. '''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. '''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. '''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. '''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. '''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. '''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. == NO WARRANTY == '''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. '''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. c4db2f8c648f8ad2be4a3442dccac2daee775e15 340 339 2006-10-06T13:09:10Z WikiSysop 1 /* GNU GENERAL PUBLIC LICENSE */ wikitext text/x-wiki __NOTOC__ = OpenBIOS Licensing = OpenBIOS is covered by the General Public License V2. = GNU GENERAL PUBLIC LICENSE = Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. == Preamble == The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. == TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION == '''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. '''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. '''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. '''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. '''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. '''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. '''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. '''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. '''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. '''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. '''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. == NO WARRANTY == '''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. '''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. 5a0430565b16c59e0e20a8904da4adf76d5ac2af 341 340 2006-10-06T13:11:30Z WikiSysop 1 /* TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION */ wikitext text/x-wiki __NOTOC__ = OpenBIOS Licensing = OpenBIOS is covered by the General Public License V2. = GNU GENERAL PUBLIC LICENSE = Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. == Preamble == The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. == TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION == '''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. '''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. '''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: :a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. :b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. :c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. '''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: :a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, :b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, :c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. '''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. '''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. '''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. '''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. '''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. '''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. '''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. == NO WARRANTY == '''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. '''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. cee025f36545d9c4cf63e11035e71cab3efe2db8 342 341 2006-10-06T13:12:49Z WikiSysop 1 /* NO WARRANTY */ wikitext text/x-wiki __NOTOC__ = OpenBIOS Licensing = OpenBIOS is covered by the General Public License V2. = GNU GENERAL PUBLIC LICENSE = Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. == Preamble == The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. == TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION == '''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. '''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. '''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: :a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. :b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. :c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. '''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: :a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, :b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, :c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. '''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. '''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. '''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. '''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. '''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. '''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. '''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. == NO WARRANTY == '''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. '''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. = END OF TERMS AND CONDITIONS = == How to Apply These Terms to Your New Programs == If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. 5c8c6682c3c847c67f64ee1a3e1650a7c11191ec 343 342 2006-10-06T13:13:32Z WikiSysop 1 /* How to Apply These Terms to Your New Programs */ wikitext text/x-wiki __NOTOC__ = OpenBIOS Licensing = OpenBIOS is covered by the General Public License V2. = GNU GENERAL PUBLIC LICENSE = Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. == Preamble == The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. == TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION == '''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. '''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. '''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: :a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. :b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. :c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. '''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: :a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, :b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, :c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. '''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. '''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. '''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. '''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. '''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. '''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. '''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. == NO WARRANTY == '''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. '''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. = END OF TERMS AND CONDITIONS = == How to Apply These Terms to Your New Programs == If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. 9dcfaa14472d8f7a068b4b33076ab2b79dd1d3ee 344 343 2006-10-06T13:14:55Z WikiSysop 1 /* How to Apply These Terms to Your New Programs */ wikitext text/x-wiki __NOTOC__ = OpenBIOS Licensing = OpenBIOS is covered by the General Public License V2. = GNU GENERAL PUBLIC LICENSE = Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. == Preamble == The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. == TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION == '''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. '''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. '''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: :a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. :b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. :c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. '''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: :a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, :b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, :c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. '''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. '''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. '''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. '''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. '''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. '''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. '''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. == NO WARRANTY == '''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. '''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. = END OF TERMS AND CONDITIONS = == How to Apply These Terms to Your New Programs == If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the [http://www.fsf.org/licensing/licenses/lgpl.html GNU Lesser General Public License] instead of this License. 29b215cafe5001dfaedf62b6f3b272903e093b15 345 344 2006-10-06T13:15:37Z WikiSysop 1 /* GNU GENERAL PUBLIC LICENSE */ wikitext text/x-wiki __NOTOC__ = OpenBIOS Licensing = OpenBIOS is covered by the General Public License V2. = GNU GENERAL PUBLIC LICENSE = Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. == Preamble == The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. == TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION == '''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. '''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. '''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: :a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. :b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. :c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. '''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: :a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, :b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, :c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. '''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. '''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. '''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. '''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. '''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. '''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. '''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. == NO WARRANTY == '''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. '''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. = END OF TERMS AND CONDITIONS = == How to Apply These Terms to Your New Programs == If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the [http://www.fsf.org/licensing/licenses/lgpl.html GNU Lesser General Public License] instead of this License. f6818481b67362874725116e347b4eac22caca35 346 345 2006-10-06T15:08:20Z WikiSysop 1 Protected "[[About:License]]": the license of OpenBIOS can not be changed [edit=sysop:move=sysop] wikitext text/x-wiki __NOTOC__ = OpenBIOS Licensing = OpenBIOS is covered by the General Public License V2. = GNU GENERAL PUBLIC LICENSE = Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. == Preamble == The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. == TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION == '''0.''' This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. '''1.''' You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. '''2.''' You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: :a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. :b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. :c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. '''3.''' You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: :a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, :b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, :c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. '''4.''' You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. '''5.''' You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. '''6.''' Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. '''7.''' If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. '''8.''' If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. '''9.''' The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. '''10.''' If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. == NO WARRANTY == '''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. '''12.''' IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. = END OF TERMS AND CONDITIONS = == How to Apply These Terms to Your New Programs == If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. one line to give the program's name and an idea of what it does. Copyright (C) yyyy name of author This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the [http://www.fsf.org/licensing/licenses/lgpl.html GNU Lesser General Public License] instead of this License. f6818481b67362874725116e347b4eac22caca35 Contact us 0 10 86 85 2006-10-06T13:18:05Z WikiSysop 1 /* Internet Relay Chat */ wikitext text/x-wiki == The OpenBIOS Project == OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, documentation. * need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this. We of course appreciate any help, hints, patches, comments, etc. NOTE: Please read our [[Project Statement]]. == Mailinglist == Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome. == Project Maintainer == The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]] 3d27bd86f39fe2af4cedb80c7192c1384ae2c74c 87 86 2006-10-06T13:18:19Z WikiSysop 1 /* The OpenBIOS Project */ wikitext text/x-wiki __NOTOC__ == The OpenBIOS Project == OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, documentation. * need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this. We of course appreciate any help, hints, patches, comments, etc. NOTE: Please read our [[Project Statement]]. == Mailinglist == Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome. == Project Maintainer == The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]] 69e5614319a6cdeb0c59bc8e7442b4f1defc4426 Template:Stub 10 27 347 2006-10-06T14:38:57Z WikiSysop 1 wikitext text/x-wiki This is a stub 5c16df0442decb9bd4ce96c0497b1f093ec40dc8 348 347 2006-10-06T14:39:58Z WikiSysop 1 wikitext text/x-wiki {{Message_box| id = translateme| backgroundcolor = beige| signalcolor = orange| signal =<pre>{{stub}}</pre>| heading = This article is not yet written but started.| message = It may be confusing or it contains not enough information it should have to explain matters. People are invited to expand it. }} [[Category:Stub]] 6315740da7699af3edbe958dfc1dbac0510fa615 Template:Message box 10 28 349 2006-10-06T14:45:09Z WikiSysop 1 wikitext text/x-wiki <center><div style="text-align: center; margin: 0 10% 1em 10%;"> {| class="notice noprint" id="{{{id}}}" style="background: {{{backgroundcolor}}}; border: 1px solid #aaa; padding: 0.1em; margin: 0.5em auto;" |- | valign="top" style="padding: 0.1em" | [[Image:{{{image}}}|45px| ]] | style="padding: 0.1em" | '''{{{heading}}}'''<br><div style="font-size: 90%;">{{{message}}}</div> |} </div></center><noinclude> [[Category:Wikipedia templates]] [[cs:Šablona:Zpráva]] [[vi:Tiêu bản:Message box]] </noinclude> b30a406a019f2d2c2977da235b919feb4612fcbc 350 349 2006-10-06T14:46:08Z WikiSysop 1 wikitext text/x-wiki <center><div style="text-align: center; margin: 0 10% 1em 10%;"> {| class="notice noprint" id="{{{id}}}" style="background: {{{backgroundcolor}}}; border: 1px solid #aaa; padding: 0.1em; margin: 0.5em auto;" |- | valign="top" style="padding: 0.1em" | [[Image:{{{image}}}|45px| ]] | style="padding: 0.1em" | '''{{{heading}}}'''<br><div style="font-size: 90%;">{{{message}}}</div> |} </div></center><noinclude> [[Category:Wikipedia templates]] </noinclude> c03f9e0dee66b83e2a59212be0dddeda6645d148 351 350 2006-10-06T15:05:54Z WikiSysop 1 wikitext text/x-wiki <center><div style="text-align: center; margin: 0 10% 1em 10%;"> {| class="notice noprint" id="{{{id}}}" style="background: {{{backgroundcolor}}}; border: 1px solid #aaa; padding: 0.1em; margin: 0.5em auto;" |- | valign="top" style="padding: 0.1em" | STUB | style="padding: 0.1em" | '''{{{heading}}}'''<br><div style="font-size: 90%;">{{{message}}}</div> |} </div></center> <includeonly>[[Category:Stubs]]</includeonly> 406c04191519fe555c77f0e50e09198ab8e2da21 352 351 2006-10-06T15:06:54Z WikiSysop 1 wikitext text/x-wiki <center><div style="text-align: center; margin: 0 10% 1em 10%;"> {| class="notice noprint" id="{{{id}}}" style="background: {{{backgroundcolor}}}; border: 1px solid #aaa; padding: 0.1em; margin: 0.5em auto;" |- | valign="top" style="padding: 0.1em" | | style="padding: 0.1em" | '''{{{heading}}}'''<br><div style="font-size: 90%;">{{{message}}}</div> |} </div></center> <includeonly>[[Category:Stubs]]</includeonly> cbdf270b54613c6db08c2c59f17897265b94f622 FlashRom 0 25 333 332 2006-10-06T15:07:09Z WikiSysop 1 wikitext text/x-wiki {{stub}} __NOTOC__ = Flash Updates in Linux = Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update. Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://linuxbios.org LinuxBIOS project] and evolved to work with non-SIS chipsets. [[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel. You can download the latest version of '''flashrom''' [http://www.openbios.org/viewcvs/trunk/LinuxBIOSv2/util/flashrom.tar.gz?view=tar from the LinuxBIOSv2 svn repository] 7de4e4ca3d314fea6155557358a89c6d8c41d398 FCODE suite 0 17 231 230 2006-10-14T21:54:42Z Stepan 2 /* Downloading the OpenBIOS FCode Suite */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself. These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=94 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/StillToBeDonesList.tar.bz2 StillToBeDonesList.tar.bz2] == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available fe7f29ce1bd93e358df867b1a7a1e145f2153759 232 231 2006-10-14T21:56:16Z Stepan 2 /* Todo */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself. These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=94 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available f6c5be53d4bd428b0940a737e0b43a812dd9ccce 233 232 2006-10-14T21:56:32Z Stepan 2 /* Todo */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself. These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=94 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 9c597a5cf4d671a9f4a335866d1293a956d89e44 234 233 2006-10-14T21:57:45Z Stepan 2 /* Source Code */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself. These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/data/fcodesuite/TestSuite/Sources accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/fcodesuite/TestSuite/Sources/TokMisc/OldTkzr TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestSuite/Sources/TestSrc.tar.bz2 TestSrc.tar.bz2] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available d4dc42bd9d7b7aa06c88ef034db8a54ea387e925 235 234 2006-10-14T22:00:30Z Stepan 2 /* The suite of unit-test cases */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself. These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewcvs/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewcvs/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The [http://www.openbios.org/fcodesuite/TestSuite/Tools tools] to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoExec AutoExec] automates the execution, and * [http://www.openbios.org/fcodesuite/TestSuite/Tools/AutoCompare AutoCompare] automates the comparison. Again, there is commentation in each explaining how it is used. Available as a Tar-File: [http://www.openbios.org/fcodesuite/TestTools.tar.bz2 TestTools.tar.bz2] == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available f029fea6f402ef36845cc01d2925e0dd9634e157 236 235 2006-10-14T22:03:31Z Stepan 2 /* Test Tools */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the LinuxBIOS svn repository but the version there is slightly different than what David contributed. A final merge will bring us to the same codebase for version 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself. These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewcvs/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewcvs/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewcvs/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewcvs/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available bf11f08c2d0192f70c9d6758396c42c5e09a2d09 237 236 2006-10-14T22:19:10Z Stepan 2 /* What is the OpenBIOS FCODE Suite? */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the OpenBIOS svn repository. '''Note:''' The binaries on this web page are built from a non-official older version of the tree. We hope that we will be able to provide binaries from the official source tree for version 1.0.2 or 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself. These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewcvs/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewcvs/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewcvs/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewcvs/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewcvs/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewcvs/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 1ef3e594112b19255e22bac30ec40f9e1aa0591c OpenBIOS 0 16 147 146 2006-10-14T22:22:27Z Stepan 2 /* toke */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. 3f822f1f7f90e15c6f1ec51768ad3a1da1008902 148 147 2006-10-14T22:23:57Z Stepan 2 /* Development Environment */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Get [http://www.openbios.org/data/bin/romheaders.tar.gz romheaders.tar.gz]. 8ea9207cbda0e11e1e375c1b04fe8c6222a0a187 149 148 2006-10-14T22:25:36Z Stepan 2 /* romheaders */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. ae4366cc100579e97102b0f2ce8d923556992c47 150 149 2006-10-14T22:25:51Z Stepan 2 /* Utilities */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. a5dde405489f71f71fb82d9192b89971ea4a61dc 151 150 2006-10-14T22:26:04Z Stepan 2 /* Development Environment */ wikitext text/x-wiki == OpenBIOS - Code Releases == Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. 2cfbe83d9538e3eef414549c4aa3739ebe11a0f2 152 151 2006-10-14T22:26:21Z Stepan 2 /* OpenBIOS - Code Releases */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. == OpenBIOS == Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. b377d18265a16222a863c2dcd46467e60c9d5314 153 152 2006-10-14T22:26:39Z Stepan 2 /* OpenBIOS */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) == Development Environment == === FCode Suite === Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === kernel === Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86. === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. 102bc27cbd7df80a577eb81b217fe5f8c3a09f9d 154 153 2006-10-14T22:27:06Z Stepan 2 /* Development Environment */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == kernel == Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. c0fa501e85037354bbfc7e2e4eda119244f93bf6 155 154 2006-10-14T22:27:15Z Stepan 2 /* kernel */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Kernel == Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86. == Utilities == === /dev/bios === /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. 0ae2b2be421adadfd4888e694f4cb386e6453bdc 156 155 2006-10-14T22:28:26Z Stepan 2 /* /dev/bios */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Kernel == Download the latest release of the OpenBIOS Forth kernel BeginAgain. Latest release version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling. BeginAgain 1.1 is here for educational purposes: The core binary is only 6k on x86. == Utilities == 586e411d22032a567595f814d96b18e582478786 157 156 2006-10-14T22:29:14Z Stepan 2 /* Development Environment */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. b04a4b7e743cbc75c86125c62a4f6cf1ac3f509b 158 157 2006-10-14T22:30:54Z Stepan 2 /* OpenBIOS */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel BeginAgain. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). NOTE: You should use the latest version of BeginAgain that is present in the complete OpenBIOS release above. It is much newer than BeginAgain 1.1 and it supports cross compiling and lots of other nifty features. BeginAgain 1.1 is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. 633ae250c746030db11a68a983ca480ae90b7b80 159 158 2006-10-14T22:31:36Z Stepan 2 /* Kernel */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the development environment, Forth kernel and all the rest. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. dda12d18597fc7674f0d34c149eb1e4594cbaf6b 160 159 2006-10-14T22:33:53Z Stepan 2 /* OpenBIOS */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. 7d1734c9cfdb2385c84304976eef0a09c26c1760 Contact us 0 10 88 87 2006-10-14T22:34:37Z Stepan 2 wikitext text/x-wiki == The OpenBIOS Project == OpenBIOS is the only free and open source Open Firmware solution available. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, documentation. * need help porting OpenBIOS to your custom hardware and are looking for some specialists to do this. We of course appreciate any help, hints, patches, comments, etc. NOTE: Please read our [[Project Statement]]. == Mailinglist == Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome. == Project Maintainer == The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]] __NOTOC__ 917af75eeee4819b1bdde470587fee4db3070635 File:Stefan.jpg 6 29 353 2006-10-14T22:39:02Z Stepan 2 wikitext text/x-wiki da39a3ee5e6b4b0d3255bfef95601890afd80709 User:Stepan 2 18 276 275 2006-10-14T22:39:37Z Stepan 2 /* About Stefan Reinauer */ wikitext text/x-wiki === About Stefan Reinauer === Stefan founded the OpenBIOS project in 1997 and works on firmware related issues ever since. His company [http://www.coresystems.de/ coresystems GmbH] offers a variety of firmware and lowlevel related services. [[Image:Stefan.jpg]] See http://www.linuxbios.org/ for more information on LinuxBIOS Contact Stefan Reinauer at <stepan at coresystems dot eu> Have a look at Stefan's private web page at http://www.stefan-reinauer.de/ 33395a301cfa1ed35c74ab6b917b603614ab0a20 Credits 0 13 102 101 2006-10-16T09:26:39Z Daniele 4 wikitext text/x-wiki Development contributions Development contributions * Stefan Reinauer (project coordination, main development) * Patrick Mauritz (initial kernel work) * Samuel Rydh (forth interfaces, MOL port, ...) * Greg Watson (briq port) * David Paktor (improving Toke) * Chen-Chau Chu (ppc fixes) * Tim Barrett (detok patches) * Krishna Myneni (permission to include kForth examples with toke) Hardware/Funding * Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development. * [http://www.linuxfund.org/ LinuxFund.org] chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work! * [http://www.newisys.com/ Newisys] funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openbios.org and www.linuxbios.org. * [http://sase.de/ Daniele Frijia] for donating a Motorola PPC-machine If you or somebody else is missing on this list, send an email to Stefan Reinauer 22a2cfbc7649963a64c852f053ef4cbf4d347140 On the Net 0 20 301 300 2006-10-18T09:46:36Z Stepan 2 /* Other Open Source Firmware Implementations */ wikitext text/x-wiki __NOTOC__ == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://linuxbios.org/ LinuxBIOS]) == Other Open Source Firmware Implementations == * [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation * redboot * SLOF * Open Hackware * SUN OpenBoot * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * [http://www.qemu.com/ QEMU] * [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization * [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator * [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux * Hypervisor * ... f63f032551ecfe3ac27812e352ea18b244d85701 FlashRom 0 25 334 333 2006-10-23T20:37:36Z Stepan 2 /* Flash Updates in Linux */ wikitext text/x-wiki {{stub}} __NOTOC__ = Flash Updates in Linux = Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update. Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://linuxbios.org LinuxBIOS project] and evolved to work with non-SIS chipsets. [[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel. You can download the latest version of '''flashrom''' [http://www.openbios.org/viewvc/trunk/LinuxBIOSv2/util/flashrom.tar.gz?view=tar from the LinuxBIOSv2 svn repository] b773d1378db682f3a4e4085274d9f6d2406701e1 FCODE suite 0 17 238 237 2006-10-23T20:43:42Z Stepan 2 wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. In August 2006 David Paktor, of the IBM Corporation, sent us a comprehensive set of contributions to the OpenBIOS FCODE suite. You can get the FCode suite from the OpenBIOS svn repository. '''Note:''' The binaries on this web page are built from a non-official older version of the tree. We hope that we will be able to provide binaries from the official source tree for version 1.0.2 or 1.0.3. In the meantime we want to offer you the opportunity to download the files directly if you prefer not compiling the code yourself. These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available f77f802df4ea601991c5a606e854edc7bb1a7033 239 238 2006-10-30T16:15:20Z Stepan 2 /* What is the OpenBIOS FCODE Suite? */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerNewFeatures.htm New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/DeTokenizer.htm the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/TokenizerLocalValues.htm Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Documents.tar.bz2 Documents.tar.bz2] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.1 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 3f5d3fd03e9f70818265532f2d20f561b782bdad 240 239 2006-10-30T17:00:19Z Stepan 2 /* Documentation */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/data/fcodesuite/LocalValues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesSupport.fth basic functionality] * the second adds a [http://www.openbios.org/data/fcodesuite/LocalValues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/data/fcodesuite/LocalValues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/data/fcodesuite/LocalValues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/LoclValSupport.tar.bz2 LoclValSupport.tar.bz2] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 647c9f3beb382bebebcff7e14301793856878ea4 241 240 2006-10-30T17:17:05Z Stepan 2 /* Local Value Support */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available d870330de1b1e748516d7646a595c0f3e499a4ba 242 241 2006-10-30T17:17:37Z Stepan 2 /* Local Value Support */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 575620a7d3808132fb633fed39fcadf4656a9b72 243 242 2006-10-30T17:18:38Z Stepan 2 /* Local Value Support */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/data/fcodesuite/StillToBeDones_List collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 11e416d48d9ab6962537e3e20022247c93d45a34 244 243 2006-10-30T17:20:06Z Stepan 2 /* Todo */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. One small set of items might be of particular interest: In a subdirectory called [http://www.openbios.org/viewvc/fcode-utils/testsuite/TokMisc/OldTkzr/?root=OpenBIOS&pathrev=95 TokMisc/OldTkzr] are two test-case source files, called ContErr0.fth and SimplStrEscs.fth together with output files that have .OldTkzr. in their names. These are the "Log" file, FCode binary output, and DeTokenization of the FCode binary, respectively, as they appear after having been run through the "old" tokenizer (version 0.6.10, dated 2005-10-15). The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 621845f28f374bd1918045fa56538cf0d2b4fdd9 245 244 2006-10-30T17:21:05Z Stepan 2 /* The suite of unit-test cases */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/X86_Cygwin X86/Cygwin] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/X86_Cygwin_TestLog.tar.bz2 X86_Cygwin_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_GNU_Linux Power-PC/Linux] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_GNU_Linux_TestLog.tar.bz2 PPC_GNU_Linux_TestLog.tar.bz2] * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/fcodesuite/TestLogs/PPC_AIX Power-PC/AIX] platform. Available as a Tar-File: [http://www.openbios.org/fcodesuite/PPC_AIX_TestLog.tar.bz2 PPC_AIX_TestLog.tar.bz2] == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available 825c048bf67bac0375cf7716a8530f47e169d7ee 246 245 2006-10-30T17:24:20Z Stepan 2 /* Unit-Test Suite Logs */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. All these are part of the FCODE suite 1.0.2 release. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.1 is not yet available fdb3a6228510fe9c1f62d2f00b7e2eb25cd7d82d 247 246 2006-10-30T17:24:34Z Stepan 2 /* Coverage Reports */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/testsuite.tar.gz?view=tar&root=OpenBIOS&pathrev=95 testsuite.tar.gz] === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. All these are part of the FCODE suite 1.0.2 release. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.2 is not yet available ed807b1a4cce052feeea7a9e826779d34b64b6b7 248 247 2006-10-30T17:25:36Z Stepan 2 /* The suite of unit-test cases */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. The test tools are also part of the test suite archive above == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. All these are part of the FCODE suite 1.0.2 release. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.2 is not yet available 24d9f938707b62dc36fd5a9f2cf9ba1a60fa2a77 249 248 2006-10-30T17:25:55Z Stepan 2 /* Test Tools */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. All these are part of the FCODE suite 1.0.2 release. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.2 is not yet available 74b020adf48f48364347c51f1c5909b59614fffa 250 249 2006-10-30T17:26:25Z Stepan 2 /* Unit-Test Suite Logs */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS&pathrev=95 accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.2 is not yet available b25813b8aac1a1ae5a7fd7b7045aa93445ce4183 251 250 2006-10-30T17:27:20Z Stepan 2 /* The suite of unit-test cases */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=95 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.2 is not yet available 02d09441eb7bf5fabc255e21bb51b2ff5125d8e4 252 251 2006-10-30T17:28:59Z Stepan 2 /* Source Code */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === Modified [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources and Makefiles]. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.1] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.2 is not yet available dea39af73ba3f98483e2ee01711d08b948031567 253 252 2006-10-30T17:29:45Z Stepan 2 /* Source Code */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.1 (released 2006-09-21)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.2 is not yet available c130f1c8d21f99a3287e6808311efdfb7b712502 254 253 2006-10-30T17:30:07Z Stepan 2 /* Downloading the OpenBIOS FCode Suite */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. Available as a Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.2 is not yet available f5c982ac8e6047a0f50b72be27a606923f16fd8f 255 254 2006-10-30T17:31:47Z Stepan 2 /* Executables for three platforms */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.2 is not yet available 383eb5603e636ca8ddba8c744514dd8db6254f9f 256 255 2006-10-30T17:50:48Z Stepan 2 /* Source Code */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2] A hand crafted document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ the changes since version 1.0.2] === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.2 is not yet available 6da64eaefc19f14aafdbba001fcc3d79d2647f38 257 256 2006-10-30T17:51:05Z Stepan 2 /* Source Code */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2] A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ the changes since version 1.0.1]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.2 is not yet available 3492d27df7dffd483b83d439ed97684b7d974f0d 258 257 2006-10-30T18:00:29Z Stepan 2 /* Source Code */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2] See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] * TODO: coverage report for toke 1.0.2 is not yet available 2401d9d6c6d7ce4cacb45c2985e536e99c60b1ae 259 258 2006-10-30T22:03:15Z Stepan 2 /* Coverage Reports */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=110 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=110 FCode-utils 1.0.2] See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] bee63d174729829def0ed7e62a1d3f6a7448a6ca 260 259 2006-10-30T23:07:16Z Stepan 2 /* Source Code */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=113 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2] See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. The proper operation of the Test-suite has some dependency on the directory structure. Specifically, it expects the LocalValues directory, containing the Local Values Support files, to be a sibling of the parent (an "uncle" if you will) of the directory in which the Test-suite resides. There are sym-links that will clarify this. === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] 0aaa9256711a9c690be3e64dd76e9bba1a397b39 261 260 2006-10-30T23:23:23Z Stepan 2 /* The suite of unit-test cases */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=113 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2] See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. Run the unit-test cases with $ make tests === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] 0b5ec11df0d85077bd6f3f0b21780f28e1927407 262 261 2006-10-30T23:33:04Z Stepan 2 /* Executables for three platforms */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=113 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2] See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created. There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. Run the unit-test cases with $ make tests === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] 6eaac9e6f481a75b21d0a00e25ea6d662b99e976 News 0 24 328 327 2006-10-30T17:48:01Z Stepan 2 wikitext text/x-wiki '''FCODE suite 1.0.2 released''' (2006-10-30) David Paktor sent a new fork of the [[FCODE suite|OpenBIOS FCODE suite]]. After only a couple of days we finally got this merged into the official code base. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) David Paktor, of the IBM Corporation, has contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here '''Sparc32 support in development''' (2006-05-05) OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project. '''OpenBIOS switched to Subversion''' (2006-04-26) See the [[Download|development repository]] for more information. '''Bugfix version of tokenizer toke''' (2005-10-15) Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New version of toke''' (2005-10-05) Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New versions of toke and detok''' (2005-03-10) New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1. '''Stallman calls for action on Free BIOS''' (2005-02-26) FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS. ''' Portability and cross development''' (2005-01-12) OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC. '''OpenBIOS boots, part II''' (2004-08-01) After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq. '''Linux Tag''' (2004-06-27) The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver. '''OpenBIOS boots''' (2004-05-23) After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86). '''IDE support''' (2004-01-23) Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon. '''Device and Client Interface''' (2004-01-10) OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux. '''Bitkeeper repository''' (2003-12-20) Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree. '''Toke and Detok update''' (2003-11-29) Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now. '''OpenBIOS forth kernel 1.1''' (2003-10-12) After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system. '''OpenBIOS forth kernel released''' (2003-09-16) After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain". '''New domain: openbios.org!''' (2003-08-23) We got it! After many years of hazzling with a domain grabber we finally got the domain [http://openbios.org/ openbios.org]. '''dictionary dumping''' (2002-10-16) OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[Mailinglist|mailing list archive]]. '''LinuxFund.org''' (2002-07-04) OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project. '''toke and detok update''' (2002-05-26) Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs. '''toke 0.2 released''' (2002-03-20) The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing. '''toke 0.1 released''' (2002-03-04) Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it. '''detok 0.3 released''' (2002-02-26) The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%. '''/dev/bios 0.3.2 released''' (2002-02-19) After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets. '''new version of /dev/bios available''' (2002-02-15) The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets. '''new version of feval released''' (2001-12-16) FCode evaluator feval-0.2.6 released. This is a bug fix release. '''Talk to us LIVE!''' (2001-12-03) Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone) '''new version of detok released''' (2001-12-02) FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details. '''OpenBIOS is now under control of CVS''' (2001-11-12) The OpenBIOS development CVS is up and running. '''new version of feval released''' (2001-11-08) FCode evaluator feval-0.2.5 released. This version has preliminary package support. '''new version of detok released''' (2001-10-15) FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error. '''new version of detok and feval released''' (2001-09-16) Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now. '''we now have a detokenizer''' (2001-09-09) There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite. '''general news on bios-coding''' (2000-02-13) The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/. '''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.''' a242b2113b751865c9265a8d13880f9ed330bb47 Welcome to OpenBIOS 0 2 27 26 2006-10-30T17:49:30Z Stepan 2 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, CodeGen, Apple, IBM and others. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ dce01d8d7d8991a15cebd5710baf18646e9ad63d Data/fcodesuite/Documents/TokenizerNewFeatures.htm 0 30 354 2006-12-01T19:07:56Z DavidPaktor 3 This should be a sym-link... wikitext text/x-wiki This should be a link to [[http://www.openbios.org/data/fcodesuite/Documents/toke.html]] 8319f597a1f23d2b00fc24cc7a17d931cf5e58b5 355 354 2006-12-01T19:11:33Z DavidPaktor 3 wikitext text/x-wiki This should be a link to the Tokenizer New Features Document [[http://www.openbios.org/data/fcodesuite/Documents/toke.html]] ee194c938009775944220fe3f8fa9fe7a7b151ec SmartFirmware 0 31 356 2006-12-11T09:03:27Z Stepan 2 wikitext text/x-wiki == Introduction == In 2006 [http://codegen.com/] released their Open Firmware implementation under a BSL like license. Their code, entirely written in ANSI C, contains the following components: * [http://www.codegen.com/SmartFirmware/index.html SmartFirmware™]: an ANSI C implementation of the IEEE-1275 Open Firmware boot firmware standard. Dramatically reduce and ease your firmware development and system bring-up times and costs. * An [http://www.codegen.com/SmartFirmware/ccfcode.html ANSI C compiler] that generates Open Firmware compatible Forth/Fcode makes it easy to develop drivers for PCI cards and PMC modules. 627aa3cdbb03145b2c34ee0d6b73814948613f78 SmartFirmware 0 31 357 356 2006-12-11T09:15:14Z Stepan 2 /* Introduction */ wikitext text/x-wiki == Introduction == In 2006 [http://codegen.com/ CodeGen, Inc] released their Open Firmware implementation under a BSL like license. Their code, entirely written in ANSI C, contains the following components: * [http://www.codegen.com/SmartFirmware/index.html SmartFirmware™]: an ANSI C implementation of the IEEE-1275 Open Firmware boot firmware standard. Dramatically reduce and ease your firmware development and system bring-up times and costs. * An [http://www.codegen.com/SmartFirmware/ccfcode.html ANSI C compiler] that generates Open Firmware compatible Forth/Fcode makes it easy to develop drivers for PCI cards and PMC modules. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=SmartFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/smartfirmware/ if you want a specific revision: $ svn co svn://openbios.org/smartfirmware -r 1 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/smartfirmware-svn/ smartfirmware</nowiki> 977295578c968333579a8a6b3e7de14d3aa9b222 Welcome to OpenBIOS 0 2 28 27 2006-12-11T09:15:59Z Stepan 2 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from SUN, Firmworks, [[SmartFirmware|CodeGen]], Apple, IBM and others. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ caf75a9f636666dd2e5a3c1a3c89cc7823dd80e2 29 28 2006-12-11T09:20:01Z Stepan 2 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, Alpha, AMD64 and IPF. With its flexible and modular design, OpenBIOS also targets embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ a3b20a1f3f9dc2d158782876a7d813833dc20db6 30 29 2006-12-11T10:17:04Z Stepan 2 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ cf4ae7bd6b28e4a1384f9f00b8fa04fe6509169a 31 30 2006-12-11T10:20:52Z Stepan 2 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. OpenBIOS relies on an additional low-level firmware for hardware bringup, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) David Paktor added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) David Paktor, of the IBM Corporation, has contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 5022c95d0036aa37f27edc52725f76dc0131c373 32 31 2007-01-08T06:28:59Z DavidPaktor 3 Added mail-link to my name in two places. wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. OpenBIOS relies on an additional low-level firmware for hardware bringup, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ eda36295bb546004d8e4344f2555154e8f9249f5 33 32 2007-01-09T15:12:03Z Stepan 2 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. OpenBIOS relies on an additional low-level firmware for hardware bring-up, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 8344c58bfda3fafb0f16c6c92a1cb7d167c7b219 34 33 2007-01-09T15:12:43Z Stepan 2 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBoot|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. OpenBIOS relies on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 07cb0df9af62e07f1edcf3b890acb34bdc36da48 35 34 2007-01-13T17:40:10Z WikiSysop 1 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. OpenBIOS relies on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ acf6bdf74ca52dc1e58a766247fd01e20f5c866f 36 35 2007-01-13T17:51:34Z WikiSysop 1 wikitext text/x-wiki = Welcome to Open Firmware = <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. OpenBIOS relies on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 656abb8e446d97abd7a18b173158bb7ae5697ffe 37 36 2007-01-13T17:53:31Z WikiSysop 1 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> '''OpenBIOS''' is a free portable firmware implementation. The goal is to implement a 100% IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is OpenBIOS' goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, OpenBIOS targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. OpenBIOS relies on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Project Statement == Our [[Project Statement]] contains some words about the intention of OpenBIOS and how we want to realize those goals. This is a rough draft of the dos and don'ts in the project and worthwhile reading if you consider contributing to the project. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ acf6bdf74ca52dc1e58a766247fd01e20f5c866f 38 37 2007-01-13T18:02:11Z WikiSysop 1 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[Downloads|development download page]] or the [[Releases|releases page]]. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 0a253e3d918d8007327e7e71e07d36a5f6366c74 39 38 2007-04-26T22:30:00Z Stepan 2 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:dlpaktor@netscape.net David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:dlpaktor@netscape.net David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 32f4c8cc228becb87bf7d7acf25da7cbabfa965f OpenBOOT 0 32 360 2006-12-11T09:18:19Z Stepan 2 wikitext text/x-wiki == Introduction == In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenBoot ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openboot/ if you want a specific revision: $ svn co svn://openbios.org/openboot -r 1 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki> 6404c0a09136e110257f01b1a8ba99ecccad90a8 361 360 2006-12-11T09:18:46Z Stepan 2 /* Download */ wikitext text/x-wiki == Introduction == In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenBOOT ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openboot/ if you want a specific revision: $ svn co svn://openbios.org/openboot -r 1 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki> 29899607fb350bef050d96abc08bf87cb75d280b 362 361 2007-01-13T17:39:52Z WikiSysop 1 [[OpenBoot]] moved to [[OpenBOOT]] wikitext text/x-wiki == Introduction == In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenBOOT ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openboot/ if you want a specific revision: $ svn co svn://openbios.org/openboot -r 1 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki> 29899607fb350bef050d96abc08bf87cb75d280b Open Firmware 0 33 365 2006-12-11T09:36:45Z Stepan 2 wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> ed2c7f74a8d0969cb8f03d6866397f9da914f71d News 0 24 329 328 2007-01-08T06:39:17Z DavidPaktor 3 Added email contact to my name in three places on this page, too. wikitext text/x-wiki '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:dlpaktor@netscape.net David Paktor] sent a new fork of the [[FCODE suite|OpenBIOS FCODE suite]]. After only a couple of days we finally got this merged into the official code base. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:dlpaktor@netscape.net David Paktor], on behalf of the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) [mailto:dlpaktor@netscape.net David Paktor], on behalf of the IBM Corporation, contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here '''Sparc32 support in development''' (2006-05-05) OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project. '''OpenBIOS switched to Subversion''' (2006-04-26) See the [[Download|development repository]] for more information. '''Bugfix version of tokenizer toke''' (2005-10-15) Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New version of toke''' (2005-10-05) Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New versions of toke and detok''' (2005-03-10) New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1. '''Stallman calls for action on Free BIOS''' (2005-02-26) FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS. ''' Portability and cross development''' (2005-01-12) OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC. '''OpenBIOS boots, part II''' (2004-08-01) After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq. '''Linux Tag''' (2004-06-27) The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver. '''OpenBIOS boots''' (2004-05-23) After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86). '''IDE support''' (2004-01-23) Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon. '''Device and Client Interface''' (2004-01-10) OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux. '''Bitkeeper repository''' (2003-12-20) Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree. '''Toke and Detok update''' (2003-11-29) Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now. '''OpenBIOS forth kernel 1.1''' (2003-10-12) After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system. '''OpenBIOS forth kernel released''' (2003-09-16) After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain". '''New domain: openbios.org!''' (2003-08-23) We got it! After many years of hazzling with a domain grabber we finally got the domain [http://openbios.org/ openbios.org]. '''dictionary dumping''' (2002-10-16) OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[Mailinglist|mailing list archive]]. '''LinuxFund.org''' (2002-07-04) OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project. '''toke and detok update''' (2002-05-26) Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs. '''toke 0.2 released''' (2002-03-20) The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing. '''toke 0.1 released''' (2002-03-04) Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it. '''detok 0.3 released''' (2002-02-26) The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%. '''/dev/bios 0.3.2 released''' (2002-02-19) After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets. '''new version of /dev/bios available''' (2002-02-15) The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets. '''new version of feval released''' (2001-12-16) FCode evaluator feval-0.2.6 released. This is a bug fix release. '''Talk to us LIVE!''' (2001-12-03) Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone) '''new version of detok released''' (2001-12-02) FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details. '''OpenBIOS is now under control of CVS''' (2001-11-12) The OpenBIOS development CVS is up and running. '''new version of feval released''' (2001-11-08) FCode evaluator feval-0.2.5 released. This version has preliminary package support. '''new version of detok released''' (2001-10-15) FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error. '''new version of detok and feval released''' (2001-09-16) Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now. '''we now have a detokenizer''' (2001-09-09) There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite. '''general news on bios-coding''' (2000-02-13) The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/. '''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.''' 88b22a23847a779d984732d8e9c62ec90bd9857a MediaWiki:Sidebar 8 7 66 65 2007-01-13T17:22:39Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Experience ** Releases|Releases ** Downloads|Downloads ** Milestones|Milestones * Development ** FCODE suite|FCODE suite ** BeginAgain|Kernel ** FlashRom|Flashing ** http://bugzilla.openbios.org/|Issues/Bugs * Documentation ** OpenFirmware|OpenFirmware ** Bindings|Bindings and Supplements ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges b69d3072f6a1dd9e442fb1d925e8741eecb23387 67 66 2007-01-13T17:35:53Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Implementations ** Open Firmware ** Smart Firmware ** OpenBIOS ** SLOF * Experience ** Releases|Releases ** Downloads|Downloads * Development ** FCODE suite|FCODE suite ** BeginAgain|Kernel ** FlashRom|Flashing ** http://bugzilla.openbios.org/|Issues/Bugs ** Low Level Firmware * Documentation ** OpenFirmware|OpenFirmware ** Bindings|Bindings and Supplements ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 4e6887dcee4c8e0c249869670b02c21bb7ca216d 68 67 2007-01-13T17:38:48Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Implementations ** OpenFirmware|Open Firmware ** SmartFirmware|Smart Firmware ** OpenBOOT|OpenBOOT ** Releases|OpenBIOS ** SLOF|SLOF * Experience ** Releases|Releases ** Downloads|Downloads * Development ** FCODE suite|FCODE suite ** BeginAgain|Kernel ** FlashRom|Flashing ** http://bugzilla.openbios.org/|Issues/Bugs ** Low Level Firmware * Documentation ** OpenFirmware|OpenFirmware ** Bindings|Bindings and Supplements ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 9ba2e22d6fe73f8bc6bcc198f8814138ba761c09 69 68 2007-01-13T17:39:20Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Implementations ** Open Firmware|Open Firmware ** SmartFirmware|Smart Firmware ** OpenBOOT|OpenBOOT ** Releases|OpenBIOS ** SLOF|SLOF * Experience ** Releases|Releases ** Downloads|Downloads * Development ** FCODE suite|FCODE suite ** BeginAgain|Kernel ** FlashRom|Flashing ** http://bugzilla.openbios.org/|Issues/Bugs ** Low Level Firmware * Documentation ** OpenFirmware|OpenFirmware ** Bindings|Bindings and Supplements ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges cee66d6a8d134857da47981d7e1902f5e788e899 70 69 2007-01-13T17:42:58Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Implementations ** Open Firmware|Open Firmware ** SmartFirmware|Smart Firmware ** OpenBOOT|OpenBOOT ** OpenBIOS|OpenBIOS ** SLOF|SLOF * Experience ** Releases|Releases ** Downloads|Downloads * Development ** FCODE suite|FCODE suite ** BeginAgain|Kernel ** FlashRom|Flashing ** http://bugzilla.openbios.org/|Issues/Bugs ** Low Level Firmware * Documentation ** OpenFirmware|OpenFirmware ** Bindings|Bindings and Supplements ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 75212460884c7d27b40213a909f38f2583d59bf7 71 70 2007-01-13T17:44:02Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Implementations ** Open Firmware|Open Firmware ** SmartFirmware|Smart Firmware ** OpenBOOT|OpenBOOT ** OpenBIOS|OpenBIOS ** SLOF|SLOF * Development ** FCODE suite|FCODE suite ** BeginAgain|Kernel ** FlashRom|Flashing ** http://bugzilla.openbios.org/|Issues/Bugs ** Low Level Firmware * Documentation ** OpenFirmware|OpenFirmware ** Bindings|Bindings and Supplements ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 132b956192cc9f9d8754651c25d190f3ae304ec2 72 71 2007-01-24T12:14:41Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Implementations ** Open Firmware|Open Firmware ** SmartFirmware|Smart Firmware ** OpenBOOT|OpenBOOT ** OpenBIOS|OpenBIOS ** SLOF|SLOF * Development ** FCODE suite|FCODE suite ** BeginAgain|Kernel ** FlashRom|Flashing ** http://bugzilla.openbios.org/|Issues/Bugs ** Low Level Firmware * Documentation ** IEEE1275-1994|Open Firmware ** Bindings|Bindings and Supplements ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 4d3e18271daf62b92582fe72fd3431291590a840 73 72 2007-01-24T12:15:34Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Project Statement|Project Statement ** Credits|Credits ** Licensing|Licensing * Implementations ** Open Firmware|Open Firmware ** SmartFirmware|Smart Firmware ** OpenBOOT|OpenBOOT ** OpenBIOS|OpenBIOS ** SLOF|SLOF * Development ** FCODE suite|FCODE suite ** BeginAgain|Kernel ** FlashRom|Flashing ** http://bugzilla.openbios.org/|Issues/Bugs ** Low Level Firmware * Documentation ** IEEE 1275-1994|Open Firmware ** Bindings|Bindings and Supplements ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 89f1843cb6545df37fd1c7626e7ff6bd77fcbda3 OpenBoot 0 34 382 2007-01-13T17:39:52Z WikiSysop 1 [[OpenBoot]] moved to [[OpenBOOT]] wikitext text/x-wiki #REDIRECT [[OpenBOOT]] 89f7f9afd211ca21524e9d7467a22485a4cf7484 OpenBIOS 0 16 161 160 2007-01-13T17:41:17Z WikiSysop 1 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. == Introduction == OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. == Source code browsing == You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. == Snapshots == There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. == More on Subversion == * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] 0c185ece03c152f6c6281416885d56d8cd74a3bb 162 161 2007-01-13T17:42:18Z WikiSysop 1 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] 80f0a15de7a17096e285f9704e3622d6de305741 163 162 2007-01-13T17:42:29Z WikiSysop 1 [[Releases]] moved to [[OpenBIOS]] wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewcvs/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] 80f0a15de7a17096e285f9704e3622d6de305741 164 163 2007-04-18T09:28:02Z Stepan 2 /* OpenBIOS */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[Downloads|OpenBIOS download page]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] 47cb29fb4d98167c06c1db21945f5bdd0879b4b4 165 164 2007-04-26T22:19:57Z Stepan 2 /* OpenBIOS - Code Releases */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[#snapshots|snapshots section]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] d927fe60185bb17b9fc58979782b326aa517a085 166 165 2007-04-26T22:20:38Z Stepan 2 /* OpenBIOS - Code Releases */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are currently working hard toward the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs. All the releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] 7067cde603b260599e44082791eaa2bca6b60a87 167 166 2007-04-26T22:22:57Z Stepan 2 /* OpenBIOS - Code Releases */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays). '''Note:''' The OpenBIOS releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. You might also want to have a look at the other Open Firmware implementations in the Implementations section on the left side of this page. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha1] (2006-10-12) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] 109f8803869e09776ead8a760f82491901957dfe 168 167 2007-04-26T22:24:19Z Stepan 2 /* OpenBIOS */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays). '''Note:''' The OpenBIOS releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. You might also want to have a look at the other Open Firmware implementations in the Implementations section on the left side of this page. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha2] (2007-04-27) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[Downloads#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] de85994bf629a67f2c927644c52ecfa767e7439e 169 168 2007-04-26T22:25:47Z Stepan 2 /* Development Repository */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays). '''Note:''' The OpenBIOS releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. You might also want to have a look at the other Open Firmware implementations in the Implementations section on the left side of this page. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=96 OpenBIOS 1.0alpha2] (2007-04-27) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] 2bc80ac47134a066be345181ea0095de8b99b60d 170 169 2007-04-26T22:27:24Z Stepan 2 /* OpenBIOS */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays). '''Note:''' The OpenBIOS releases on this page are rather old. It is suggested that you have a look at the [[#Snapshots|snapshots section]] to get a development snapshot of OpenBIOS. You might also want to have a look at the other Open Firmware implementations in the Implementations section on the left side of this page. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] 310e9dea51865c3f4504d73406c376d07d25d212 171 170 2007-04-26T22:27:59Z Stepan 2 /* OpenBIOS - Code Releases */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays). = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == Download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility. Go to the [[FCODE suite|FCode Suite page]] (2006-09-21) === detok === Download the latest release of detok, the OpenBIOS FCode detokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=96 detok-1.0.0] (2006-10-15) === toke === Download the latest release of toke, the OpenBIOS FCode tokenizer. Latest release version is: [http://www.openbios.org/viewcvs/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=95 toke-1.0.1] (2006-10-15) === romheaders === Romheaders is a small utility to dump the pci header information from pci rom images in human readable form. Romheaders is [[FCODE Suite|part of the FCODE suite]] now. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] b481ede22f0546e90baa67424262aba389815e96 Releases 0 35 383 2007-01-13T17:42:29Z WikiSysop 1 [[Releases]] moved to [[OpenBIOS]] wikitext text/x-wiki #REDIRECT [[OpenBIOS]] 5050cbfd3aaa3f974b2de33535f88e6900e52c30 Bindings 0 36 384 2007-01-13T17:44:31Z WikiSysop 1 wikitext text/x-wiki == Bindings and Supplements for Bus Systems == * [http://www.openbios.org/docs/bus.pci.pdf PCI - Approved Version 2.1] * [http://www.openbios.org/docs/bus.usb.pdf USB 1.0] * [http://www.openbios.org/docs/bus.isa.pdf ISA - Draft 0.4] * [http://www.openbios.org/docs/bus.pccard.pdf PC-Card] == Bindings and Supplements for CPU Architectures == * [http://www.openbios.org/docs/12756d5.ps Open Firmware 64bit extensions] * [http://www.openbios.org/docs/arm0_3d.pdf ARM bindings] * [http://www.openbios.org/docs/ppc-2_1.ps PPC bindings] * [http://www.openbios.org/docs/PREP.ps PPC PREP bindings] * [http://www.openbios.org/docs/CHRP.ps PPC CHRP bindings] * [http://www.openbios.org/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA] == Device Bindings == * [http://www.openbios.org/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller * [http://www.openbios.org/docs/audio-1_0d.ps Audio] - ISA Audio * [http://www.openbios.org/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller * [http://www.openbios.org/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller * [http://www.openbios.org/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller * [http://www.openbios.org/docs/lfb-1_0d.ps Linear Framebuffer] * [http://www.openbios.org/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port * [http://www.openbios.org/docs/serial-1_0d.ps Serial] - ISA Serial Port * [http://www.openbios.org/docs/vga-1_0d.ps VGA] - VGA Display == Recommended Practice == * [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2 * [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2 * [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0 * [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4 * [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9 * [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2 * [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!! * [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0 80d5e4bf07b0776cbfeda2bf3258f84ac30af8ac 385 384 2007-01-13T17:45:04Z WikiSysop 1 /* Bindings and Supplements for Bus Systems */ wikitext text/x-wiki __NOTOC__ == Bindings and Supplements for Bus Systems == * [http://www.openbios.org/docs/bus.pci.pdf PCI - Approved Version 2.1] * [http://www.openbios.org/docs/bus.usb.pdf USB 1.0] * [http://www.openbios.org/docs/bus.isa.pdf ISA - Draft 0.4] * [http://www.openbios.org/docs/bus.pccard.pdf PC-Card] == Bindings and Supplements for CPU Architectures == * [http://www.openbios.org/docs/12756d5.ps Open Firmware 64bit extensions] * [http://www.openbios.org/docs/arm0_3d.pdf ARM bindings] * [http://www.openbios.org/docs/ppc-2_1.ps PPC bindings] * [http://www.openbios.org/docs/PREP.ps PPC PREP bindings] * [http://www.openbios.org/docs/CHRP.ps PPC CHRP bindings] * [http://www.openbios.org/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA] == Device Bindings == * [http://www.openbios.org/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller * [http://www.openbios.org/docs/audio-1_0d.ps Audio] - ISA Audio * [http://www.openbios.org/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller * [http://www.openbios.org/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller * [http://www.openbios.org/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller * [http://www.openbios.org/docs/lfb-1_0d.ps Linear Framebuffer] * [http://www.openbios.org/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port * [http://www.openbios.org/docs/serial-1_0d.ps Serial] - ISA Serial Port * [http://www.openbios.org/docs/vga-1_0d.ps VGA] - VGA Display == Recommended Practice == * [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2 * [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2 * [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0 * [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4 * [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9 * [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2 * [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!! * [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0 cf7f0f7e8e53d37bbca2b750a8697252b862ce3e 386 385 2007-01-24T12:10:29Z Stepan 2 /* Bindings and Supplements for Bus Systems */ wikitext text/x-wiki __NOTOC__ == Bindings and Supplements for Bus Systems == * [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1] * [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0] * [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4] * [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card] == Bindings and Supplements for CPU Architectures == * [http://www.openbios.org/docs/12756d5.ps Open Firmware 64bit extensions] * [http://www.openbios.org/docs/arm0_3d.pdf ARM bindings] * [http://www.openbios.org/docs/ppc-2_1.ps PPC bindings] * [http://www.openbios.org/docs/PREP.ps PPC PREP bindings] * [http://www.openbios.org/docs/CHRP.ps PPC CHRP bindings] * [http://www.openbios.org/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA] == Device Bindings == * [http://www.openbios.org/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller * [http://www.openbios.org/docs/audio-1_0d.ps Audio] - ISA Audio * [http://www.openbios.org/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller * [http://www.openbios.org/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller * [http://www.openbios.org/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller * [http://www.openbios.org/docs/lfb-1_0d.ps Linear Framebuffer] * [http://www.openbios.org/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port * [http://www.openbios.org/docs/serial-1_0d.ps Serial] - ISA Serial Port * [http://www.openbios.org/docs/vga-1_0d.ps VGA] - VGA Display == Recommended Practice == * [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2 * [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2 * [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0 * [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4 * [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9 * [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2 * [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!! * [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0 3c42784b17e100d490148ba6109f18a7e5169040 387 386 2007-01-24T12:11:10Z Stepan 2 /* Bindings and Supplements for CPU Architectures */ wikitext text/x-wiki __NOTOC__ == Bindings and Supplements for Bus Systems == * [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1] * [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0] * [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4] * [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card] == Bindings and Supplements for CPU Architectures == * [http://www.openbios.org/data/docs/12756d5.ps Open Firmware 64bit extensions] * [http://www.openbios.org/data/docs/arm0_3d.pdf ARM bindings] * [http://www.openbios.org/data/docs/ppc-2_1.ps PPC bindings] * [http://www.openbios.org/data/docs/PREP.ps PPC PREP bindings] * [http://www.openbios.org/data/docs/CHRP.ps PPC CHRP bindings] * [http://www.openbios.org/data/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA] == Device Bindings == * [http://www.openbios.org/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller * [http://www.openbios.org/docs/audio-1_0d.ps Audio] - ISA Audio * [http://www.openbios.org/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller * [http://www.openbios.org/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller * [http://www.openbios.org/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller * [http://www.openbios.org/docs/lfb-1_0d.ps Linear Framebuffer] * [http://www.openbios.org/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port * [http://www.openbios.org/docs/serial-1_0d.ps Serial] - ISA Serial Port * [http://www.openbios.org/docs/vga-1_0d.ps VGA] - VGA Display == Recommended Practice == * [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2 * [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2 * [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0 * [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4 * [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9 * [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2 * [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!! * [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0 cb5fae94fb3bbbdfd2c736b29f13a3e8adaf7b10 388 387 2007-01-24T12:11:51Z Stepan 2 /* Device Bindings */ wikitext text/x-wiki __NOTOC__ == Bindings and Supplements for Bus Systems == * [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1] * [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0] * [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4] * [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card] == Bindings and Supplements for CPU Architectures == * [http://www.openbios.org/data/docs/12756d5.ps Open Firmware 64bit extensions] * [http://www.openbios.org/data/docs/arm0_3d.pdf ARM bindings] * [http://www.openbios.org/data/docs/ppc-2_1.ps PPC bindings] * [http://www.openbios.org/data/docs/PREP.ps PPC PREP bindings] * [http://www.openbios.org/data/docs/CHRP.ps PPC CHRP bindings] * [http://www.openbios.org/data/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA] == Device Bindings == * [http://www.openbios.org/data/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller * [http://www.openbios.org/data/docs/audio-1_0d.ps Audio] - ISA Audio * [http://www.openbios.org/data/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller * [http://www.openbios.org/data/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller * [http://www.openbios.org/data/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller * [http://www.openbios.org/data/docs/lfb-1_0d.ps Linear Framebuffer] * [http://www.openbios.org/data/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port * [http://www.openbios.org/data/docs/serial-1_0d.ps Serial] - ISA Serial Port * [http://www.openbios.org/data/docs/vga-1_0d.ps VGA] - VGA Display == Recommended Practice == * [http://www.openbios.org/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2 * [http://www.openbios.org/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2 * [http://www.openbios.org/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0 * [http://www.openbios.org/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4 * [http://www.openbios.org/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9 * [http://www.openbios.org/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2 * [http://www.openbios.org/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!! * [http://www.openbios.org/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0 9b30529b9ca39dc9ea8edd6416b01c53e67cd1c2 389 388 2007-01-24T12:12:26Z Stepan 2 /* Recommended Practice */ wikitext text/x-wiki __NOTOC__ == Bindings and Supplements for Bus Systems == * [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1] * [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0] * [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4] * [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card] == Bindings and Supplements for CPU Architectures == * [http://www.openbios.org/data/docs/12756d5.ps Open Firmware 64bit extensions] * [http://www.openbios.org/data/docs/arm0_3d.pdf ARM bindings] * [http://www.openbios.org/data/docs/ppc-2_1.ps PPC bindings] * [http://www.openbios.org/data/docs/PREP.ps PPC PREP bindings] * [http://www.openbios.org/data/docs/CHRP.ps PPC CHRP bindings] * [http://www.openbios.org/data/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA] == Device Bindings == * [http://www.openbios.org/data/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller * [http://www.openbios.org/data/docs/audio-1_0d.ps Audio] - ISA Audio * [http://www.openbios.org/data/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller * [http://www.openbios.org/data/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller * [http://www.openbios.org/data/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller * [http://www.openbios.org/data/docs/lfb-1_0d.ps Linear Framebuffer] * [http://www.openbios.org/data/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port * [http://www.openbios.org/data/docs/serial-1_0d.ps Serial] - ISA Serial Port * [http://www.openbios.org/data/docs/vga-1_0d.ps VGA] - VGA Display == Recommended Practice == * [http://www.openbios.org/data/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2 * [http://www.openbios.org/data/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2 * [http://www.openbios.org/data/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0 * [http://www.openbios.org/data/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4 * [http://www.openbios.org/data/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9 * [http://www.openbios.org/data/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2 * [http://www.openbios.org/data/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!! * [http://www.openbios.org/data/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0 bce832ff51fe281d35b6ae815d2fbc952ffa013c 390 389 2007-04-05T14:10:45Z Stepan 2 /* Recommended Practice */ wikitext text/x-wiki __NOTOC__ == Bindings and Supplements for Bus Systems == * [http://www.openbios.org/data/docs/bus.pci.pdf PCI - Approved Version 2.1] * [http://www.openbios.org/data/docs/bus.usb.pdf USB 1.0] * [http://www.openbios.org/data/docs/bus.isa.pdf ISA - Draft 0.4] * [http://www.openbios.org/data/docs/bus.pccard.pdf PC-Card] == Bindings and Supplements for CPU Architectures == * [http://www.openbios.org/data/docs/12756d5.ps Open Firmware 64bit extensions] * [http://www.openbios.org/data/docs/arm0_3d.pdf ARM bindings] * [http://www.openbios.org/data/docs/ppc-2_1.ps PPC bindings] * [http://www.openbios.org/data/docs/PREP.ps PPC PREP bindings] * [http://www.openbios.org/data/docs/CHRP.ps PPC CHRP bindings] * [http://www.openbios.org/data/docs/12751d1a.pdf Sparc 32bit Supplement - IEEE 1754 ISA] == Device Bindings == * [http://www.openbios.org/data/docs/8042-1_0d.ps 8042] - ISA Keyboard/Mouse Controller * [http://www.openbios.org/data/docs/audio-1_0d.ps Audio] - ISA Audio * [http://www.openbios.org/data/docs/fdc-1_0d.ps Floppy] - ISA Floppy Controller * [http://www.openbios.org/data/docs/isa-dma-1_0d.ps ISA DMA] - ISA DMA Controller * [http://www.openbios.org/data/docs/isa-pic-1_1d.ps ISA PIC] - ISA Interrupt Controller * [http://www.openbios.org/data/docs/lfb-1_0d.ps Linear Framebuffer] * [http://www.openbios.org/data/docs/parallel-1_0d.ps Parallel] - ISA Parallel Port * [http://www.openbios.org/data/docs/serial-1_0d.ps Serial] - ISA Serial Port * [http://www.openbios.org/data/docs/vga-1_0d.ps VGA] - VGA Display == Recommended Practice == * [http://www.openbios.org/data/docs/rec.16color.d12.pdf 16 Color Text Extension] - Draft 1.2 * [http://www.openbios.org/data/docs/rec.8bgraph.d12.pdf 8 Bit Graphics Extension] - Draft 1.2 * [http://www.openbios.org/data/docs/rec.dse.app10.pdf Device Support Extensions] - Approved Version 1.0 * [http://www.openbios.org/data/docs/rec.gennames.app14.pdf Generic Names] - Approved Version 1.4 * [http://www.openbios.org/data/docs/rec.intmap.d09.pdf Interrupt Mapping] - Draft 0.9 * [http://www.openbios.org/data/docs/rec.intpos.d02.pdf Interposition] - Draft 0.2 * [http://www.openbios.org/data/docs/rec.scsi3pi.10.pdf SCSI-3 Parallel Interface] - Version 1.0 - bug: last page first!! * [http://www.openbios.org/data/docs/rec.tftp.10.pdf TFTP Booting Extension] - Version 1.0 * [http://playground.sun.com/1275/proposals/Closed/Accepted/410-it.txt dma-ranges] 8f36ce0452d007bfe3fd380de6f941d1ebd76b08 Contact us 0 10 89 88 2007-01-13T17:55:43Z WikiSysop 1 /* The OpenBIOS Project */ wikitext text/x-wiki == The OpenBIOS Project == The OpenBIOS project coordinates all free and open source implementations of the Open Firmware standard. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, write documentation. * need help porting Open Firmware to your custom hardware and are looking for specialists to get it done. Of course we appreciate any help, hints, patches, comments, etc. NOTE: Please read our [[Project Statement]]. == Mailinglist == Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome. == Project Maintainer == The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]] __NOTOC__ 18045b14b5ce6583222d8647164c7977fc3df6c4 90 89 2007-08-12T10:46:01Z Stepan 2 /* Project Maintainer */ wikitext text/x-wiki == The OpenBIOS Project == The OpenBIOS project coordinates all free and open source implementations of the Open Firmware standard. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, write documentation. * need help porting Open Firmware to your custom hardware and are looking for specialists to get it done. Of course we appreciate any help, hints, patches, comments, etc. NOTE: Please read our [[Project Statement]]. == Mailinglist == Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #OpenBIOS. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, LinuxBIOS, firmware and related topics are welcome. == Project Maintainer == The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]] __NOTOC__ __NOEDITSECTION__ c48831041c1fbfa823f47ecf9acd1fbd033fa7ee SLOF 0 37 391 2007-01-14T14:33:15Z Stepan 2 wikitext text/x-wiki Slimline Open Firmware (SLOF) is initialization and boot source code based on the IEEE-1275 (Open Firmware) standard, developed by engineers of the IBM Corporation. The SLOF source code provides illustrates what's needed to initialize and boot Linux or a hypervisor on the industry Open Firmware boot standard. The two links below offer: * Documentation * Pseudo Open Firmware for prototyping, test, and debug * Low Level Firmware for IBM's JS20 (closed source) Note: You need an IBM ID to continue to the download. * http://www-128.ibm.com/developerworks/power/pa-slof/ * http://www-128.ibm.com/developerworks/power/pa-slof-js20/ 538ca85b7da2f248903575622f600198f8fd87f6 IEEE 1275-1994 0 15 116 115 2007-01-24T12:20:37Z WikiSysop 1 wikitext text/x-wiki After 5 years the IEEE 1275-1994 standard got withdrawn by the IEEE Standards Association. This does by no means implicate that this standard is abandoned or dead. There are several commercial implementations of Open Firmware and a quite reasonable number of hardware vendors support it. IEEE sold the rights to distribute the standards document to Global Engineering who still offer it. To Contact Global Engineering, use Phone: 1-800-854-7179, Fax: 303-397-2740. Out side the U.S. call 303-792-2181. You can also purchase the IEEE 1275-1994 document online from the [http://global.ihs.com/ Global Engineering website]. To get started with Open Firmware, download the IEEE 1275-1994, Standard for Boot (Initialization Configuration) Firmware Core Requirements and Practices. You can get the document from our [http://www.openbios.org/data/docs/of1275.pdf local mirror] or from the [ftp://playground.sun.com/pub/p1275/coredoc/1275-1994/1275.ps.gz IEEE 1275-1994 ftp archive at sun.com]. For more information on IEEE 1275 Open Firmware, we recommend you browse the [http://playground.sun.com/pub/p1275 IEEE Standard 1275 Working Group's Home Page]. No Standard without mistakes - This [http://www.openbios.org/data/docs/1275errata.pdf Errata] document contains corrections of mistakes and clarifications of the IEEE 1275-1994 standard (Draft #4). The Open Firmware standard is the elementary base of OpenBIOS. Any questions are welcome, please contact [[User:Stepan|Stefan Reinauer]] or the [[Mailinglist|OpenBIOS Mailinglist]]. f8f56364e5e9882434a7ebb97d800defb97b3948 Licensing 0 14 111 110 2007-08-12T10:46:22Z Stepan 2 /* View the license */ wikitext text/x-wiki = OpenBIOS Licensing = OpenBIOS is licensed under the GNU General Public License v2. If you adapt OpenBIOS to your needs, please contact us with your changes so that you can contribute your changes back to the community. = Why GPL? = We see the GPL giving OpenBIOS a big competitive advantage over other firmware solutions: * As a hardware vendor you get the warranty that nobody hiddenly improves the code you have been contributing without giving those improvements back. Thus, GPL guarantees that you keep control over your work and contributions. * End users / customers get great benefit from OpenBIOS being GPL licensed: The GPL insures customers that a given platform will act like all other OpenBIOS platforms. BSD is a negative marketing point where BIOS is concerned. = View the license = Have a look at the [[About:License|complete license]] __NOEDITSECTION__ f68e41c2d6d0adb10f13e94ac69f91630c193211 Open Firmware 0 33 366 365 2007-08-12T10:46:37Z Stepan 2 /* Download */ wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> __NOEDITSECTION__ 88469e2f7305f282bccb09d33af0ae196f4faa24 367 366 2007-08-13T15:20:44Z Stepan 2 some initial explanation on how to build it. wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> == LinuxBIOS == You should change openfirmware/cpu/x86/pc/biosload/config.fth: Index: config.fth =================================================================== --- config.fth (revision 533) +++ config.fth (working copy) @@ -9,7 +9,7 @@ \ - Image Format - Example Media - previous stage bootloader \ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux -create syslinux-loaded +\ create syslinux-loaded \ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload \ create bzimage-loaded @@ -19,7 +19,7 @@ \ create etherboot-variant \ Enable additional tweaks for Etherboot \ - ELF format (no pheader) - ROM - LinuxBIOS direct -\ create linuxbios-loaded +create linuxbios-loaded \ Load and run in qemu \ create qemu-loaded == Building == $ cd /home/stepan/svn/openfirmware/cpu/x86/pc/biosload/build $ make This will result in oflb.elf __NOEDITSECTION__ e17a4eea89e30c458f6fb1a9c9cba884664f0d31 368 367 2007-08-13T15:21:27Z Stepan 2 wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> == LinuxBIOS == You should change openfirmware/cpu/x86/pc/biosload/config.fth: Index: config.fth =================================================================== --- config.fth (revision 533) +++ config.fth (working copy) @@ -9,7 +9,7 @@ \ - Image Format - Example Media - previous stage bootloader \ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux -create syslinux-loaded +\ create syslinux-loaded \ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload \ create bzimage-loaded @@ -19,7 +19,7 @@ \ create etherboot-variant \ Enable additional tweaks for Etherboot \ - ELF format (no pheader) - ROM - LinuxBIOS direct -\ create linuxbios-loaded +create linuxbios-loaded \ Load and run in qemu \ create qemu-loaded == Building == $ cd openfirmware/cpu/x86/pc/biosload/build $ make This will result in oflb.elf __NOEDITSECTION__ 57d8227ffc31c9745d366d0b22e6b76f2b86b152 369 368 2007-08-13T15:27:31Z Stepan 2 wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> == LinuxBIOS == You should change openfirmware/cpu/x86/pc/biosload/config.fth: Index: config.fth =================================================================== --- config.fth (revision 533) +++ config.fth (working copy) @@ -9,7 +9,7 @@ \ - Image Format - Example Media - previous stage bootloader \ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux -create syslinux-loaded +\ create syslinux-loaded \ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload \ create bzimage-loaded @@ -19,7 +19,7 @@ \ create etherboot-variant \ Enable additional tweaks for Etherboot \ - ELF format (no pheader) - ROM - LinuxBIOS direct -\ create linuxbios-loaded +create linuxbios-loaded \ Load and run in qemu \ create qemu-loaded == Building == $ cd openfirmware/cpu/x86/pc/biosload/build $ make This will result in an ELF payload oflb.elf in the current directory. __NOEDITSECTION__ 6ee73abdd480105f74aa32196dd43df4d5a4fa4c 370 369 2007-08-14T19:55:19Z Jns 12 wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> == LinuxBIOS == You should change openfirmware/cpu/x86/pc/biosload/config.fth: Index: config.fth =================================================================== --- config.fth (revision 533) +++ config.fth (working copy) @@ -9,7 +9,7 @@ \ - Image Format - Example Media - previous stage bootloader \ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux -create syslinux-loaded +\ create syslinux-loaded \ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload \ create bzimage-loaded @@ -19,7 +19,7 @@ \ create etherboot-variant \ Enable additional tweaks for Etherboot \ - ELF format (no pheader) - ROM - LinuxBIOS direct -\ create linuxbios-loaded +create linuxbios-loaded \ Load and run in qemu -\ create qemu-loaded +create qemu-loaded == Building == Software Requirements: qemu-0.9.0 + ROMSIZE-patch Open Firmware rev. >= 500 LinuxBIOS >= v2 === Patch and build qemu === Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0. tar xvfz qemu-0.9.0.tar.gz cd qemu-0.9.0 wget http://www.freimann.org/qemu_biossize.patch patch -p1 < qemu_biossize.patch Make sure that you have gcc-3.x installed, then ./config && make && make install === Build Open Firmware === Get Open Firmware from Subversion svn co svn://openbios.org/openfirmware Change to the build directory of the biosload build. cd cpu/x86/pc/biosload/ To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines create linuxbios-loaded create qemu-loaded Comment out the line with create syslinux-loaded Now change to the build directory and type "make" cd build make After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your LinuxBIOSv[x] directory. === Building LinuxBIOS === Follow the instructions in the LinuxBIOS documentation. Make sure that you use the ofwlb.elf file as your payload. It is also very imortant that the ROMSIZE for LinuxBIOS and qemu correspond with each other. === Running it === qemu -L LinuxBIOSv3/build -hda path/to/disk.img -serial `tty` -nographic __NOEDITSECTION__ f7f9980fa4f83d5672590405d4d418a29f16bdf8 371 370 2007-08-14T19:56:07Z Jns 12 wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> == LinuxBIOS == You should change openfirmware/cpu/x86/pc/biosload/config.fth: Index: config.fth =================================================================== --- config.fth (revision 533) +++ config.fth (working copy) @@ -9,7 +9,7 @@ \ - Image Format - Example Media - previous stage bootloader \ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux -create syslinux-loaded +\ create syslinux-loaded \ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload \ create bzimage-loaded @@ -19,7 +19,7 @@ \ create etherboot-variant \ Enable additional tweaks for Etherboot \ - ELF format (no pheader) - ROM - LinuxBIOS direct -\ create linuxbios-loaded +create linuxbios-loaded \ Load and run in qemu -\ create qemu-loaded +create qemu-loaded == Building == Software Requirements: qemu-0.9.0 + ROMSIZE-patch Open Firmware rev. >= 500 LinuxBIOS >= v2 === Patch and build qemu === Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0. tar xvfz qemu-0.9.0.tar.gz cd qemu-0.9.0 wget http://www.freimann.org/qemu_biossize.patch patch -p1 < qemu_biossize.patch Make sure that you have gcc-3.x installed, then ./config && make && make install === Build Open Firmware === Get Open Firmware from Subversion svn co svn://openbios.org/openfirmware Change to the build directory of the biosload build. cd cpu/x86/pc/biosload/ To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines create linuxbios-loaded create qemu-loaded Comment out the line with create syslinux-loaded Now change to the build directory and type "make" cd build make After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your LinuxBIOSv[x] directory. === Build LinuxBIOS === Follow the instructions in the LinuxBIOS documentation. Make sure that you use the ofwlb.elf file as your payload. It is also very imortant that the ROMSIZE for LinuxBIOS and qemu correspond with each other. === Running it === qemu -L LinuxBIOSv3/build -hda path/to/disk.img -serial `tty` -nographic __NOEDITSECTION__ ebc86e3f3cb06b52915c1362a3406fe21586968b 372 371 2007-08-14T19:56:43Z Jns 12 wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> == LinuxBIOS == You should change openfirmware/cpu/x86/pc/biosload/config.fth: Index: config.fth =================================================================== --- config.fth (revision 533) +++ config.fth (working copy) @@ -9,7 +9,7 @@ \ - Image Format - Example Media - previous stage bootloader \ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux -create syslinux-loaded +\ create syslinux-loaded \ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload \ create bzimage-loaded @@ -19,7 +19,7 @@ \ create etherboot-variant \ Enable additional tweaks for Etherboot \ - ELF format (no pheader) - ROM - LinuxBIOS direct -\ create linuxbios-loaded +create linuxbios-loaded \ Load and run in qemu -\ create qemu-loaded +create qemu-loaded == Building == Software Requirements: qemu-0.9.0 + ROMSIZE-patch Open Firmware rev. >= 500 LinuxBIOS >= v2 === Patch and build qemu === Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0. tar xvfz qemu-0.9.0.tar.gz cd qemu-0.9.0 wget http://www.freimann.org/qemu_biossize.patch patch -p1 < qemu_biossize.patch Make sure that you have gcc-3.x installed, then ./config && make && make install === Build Open Firmware === Get Open Firmware from Subversion svn co svn://openbios.org/openfirmware Change to the build directory of the biosload build. cd cpu/x86/pc/biosload/ To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines create linuxbios-loaded create qemu-loaded Comment out the line with create syslinux-loaded Now change to the build directory and type "make" cd build make After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your LinuxBIOSv[x] directory. === Build LinuxBIOS === Follow the instructions in the LinuxBIOS documentation. Make sure that you use the ofwlb.elf file as your payload. It is also very imortant that the ROMSIZE for LinuxBIOS and qemu correspond with each other. === Run it === qemu -L LinuxBIOSv3/build -hda path/to/disk.img -serial `tty` -nographic __NOEDITSECTION__ ba27b47154ed7445247a3932b707c6a7e3a85618 373 372 2007-08-17T10:47:51Z Jns 12 wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> == LinuxBIOS == You should change openfirmware/cpu/x86/pc/biosload/config.fth: Index: config.fth =================================================================== --- config.fth (revision 533) +++ config.fth (working copy) @@ -9,7 +9,7 @@ \ - Image Format - Example Media - previous stage bootloader \ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux -create syslinux-loaded +\ create syslinux-loaded \ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload \ create bzimage-loaded @@ -19,7 +19,7 @@ \ create etherboot-variant \ Enable additional tweaks for Etherboot \ - ELF format (no pheader) - ROM - LinuxBIOS direct -\ create linuxbios-loaded +create linuxbios-loaded \ Load and run in qemu -\ create qemu-loaded +create qemu-loaded == Building == Software Requirements: qemu-0.9.0 + ROMSIZE-patch Open Firmware rev. >= 500 LinuxBIOS >= v2 === Patch and build qemu === Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0. tar xvfz qemu-0.9.0.tar.gz cd qemu-0.9.0 wget http://www.freimann.org/qemu_biossize.patch patch -p1 < qemu_biossize.patch Make sure that you have gcc-3.x installed, then ./config && make && make install === Build Open Firmware === Get Open Firmware from Subversion svn co svn://openbios.org/openfirmware Change to the build directory of the biosload build. cd cpu/x86/pc/biosload/ To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines create linuxbios-loaded create qemu-loaded Comment out the line with create syslinux-loaded Now change to the build directory and type "make" cd build make After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your LinuxBIOSv[x] directory. === Build LinuxBIOS === Follow the instructions in the LinuxBIOS documentation. Make sure that you use the ofwlb.elf file as your payload. It is also very imortant that the ROMSIZE for LinuxBIOS and qemu correspond with each other. === Run it === qemu -L LinuxBIOSv3/build -hda path/to/disk.img -serial `tty` -nographic __NOEDITSECTION__ f0682cfbee952882ab0d2e6d164b331aada379f8 374 373 2007-08-17T15:08:02Z Jns 12 wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> == LinuxBIOS == You should change openfirmware/cpu/x86/pc/biosload/config.fth: Index: config.fth =================================================================== --- config.fth (revision 548) +++ config.fth (working copy) @@ -9,7 +9,7 @@ \ - Image Format - Example Media - previous stage bootloader \ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux -create syslinux-loaded +\ create syslinux-loaded \ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload \ create bzimage-loaded @@ -19,7 +19,7 @@ \ create etherboot-variant \ Enable additional tweaks for Etherboot \ - ELF format (no pheader) - ROM - LinuxBIOS direct -\ create linuxbios-loaded +create linuxbios-loaded \ Load and run in qemu -\ create qemu-loaded +create qemu-loaded == Building == Software Requirements: qemu-0.9.0 + ROMSIZE-patch Open Firmware rev. >= 500 LinuxBIOS >= v2 === Patch and build qemu === Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0. tar xvfz qemu-0.9.0.tar.gz cd qemu-0.9.0 wget http://www.freimann.org/qemu_biossize.patch patch -p1 < qemu_biossize.patch Make sure that you have gcc-3.x installed, then ./config && make && make install === Build Open Firmware === Get Open Firmware from Subversion svn co svn://openbios.org/openfirmware Change to the build directory of the biosload build. cd cpu/x86/pc/biosload/ To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines create linuxbios-loaded create qemu-loaded Comment out the line with create syslinux-loaded Now change to the build directory and type "make" cd build make After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your LinuxBIOSv[x] directory. === Build LinuxBIOS === Follow the instructions in the LinuxBIOS documentation. Make sure that you use the ofwlb.elf file as your payload. It is also very imortant that the ROMSIZE for LinuxBIOS and qemu correspond with each other. === Run it === qemu -L LinuxBIOSv3/build -hda path/to/disk.img -serial `tty` -nographic __NOEDITSECTION__ c72c0c9f53d515922e3758257ebbd431c3b4da1d 375 374 2007-09-03T15:40:00Z Jns 12 New patch for config.fth with "create pc-linux" enabled wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> == LinuxBIOS == You should change openfirmware/cpu/x86/pc/biosload/config.fth: Index: config.fth =================================================================== --- config.fth (revision 599) +++ config.fth (working copy) @@ -2,14 +2,14 @@ purpose: Establish configuration definitions create pc \ Demo version for generic PC -\ create pc-linux \ Demo version for generic PC and Linux +create pc-linux \ Demo version for generic PC and Linux \ create pc-serial \ Demo version for generic PC \ --- The environment that "boots" OFW --- \ - Image Format - Example Media - previous stage bootloader \ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux -create syslinux-loaded +\ create syslinux-loaded \ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload \ create bzimage-loaded @@ -19,10 +19,10 @@ \ create etherboot-variant \ Enable additional tweaks for Etherboot \ - ELF format (no pheader) - ROM - LinuxBIOS direct -\ create linuxbios-loaded +create linuxbios-loaded \ Load and run in qemu -\ create qemu-loaded +create qemu-loaded [ifdef] pc-serial create serial-console @@ -47,7 +47,7 @@ \ the point where Linux starts using the MMU. It isn't strictly \ necessary to use virtual mode if you just want to boot Linux \ and then have OFW disappear. -create virtual-mode +\ create virtual-mode create pc create linux-support [then] == Building == Software Requirements: qemu-0.9.0 + ROMSIZE-patch Open Firmware rev. >= 500 LinuxBIOS >= v2 === Patch and build qemu === Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0. tar xvfz qemu-0.9.0.tar.gz cd qemu-0.9.0 wget http://www.freimann.org/qemu_biossize.patch patch -p1 < qemu_biossize.patch Make sure that you have gcc-3.x installed, then ./config && make && make install === Build Open Firmware === Get Open Firmware from Subversion svn co svn://openbios.org/openfirmware Change to the build directory of the biosload build. cd cpu/x86/pc/biosload/ To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines create linuxbios-loaded create qemu-loaded Comment out the line with create syslinux-loaded Now change to the build directory and type "make" cd build make After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your LinuxBIOSv[x] directory. === Build LinuxBIOS === Follow the instructions in the LinuxBIOS documentation. Make sure that you use the ofwlb.elf file as your payload. It is also very imortant that the ROMSIZE for LinuxBIOS and qemu correspond with each other. === Run it === qemu -L LinuxBIOSv3/build -hda path/to/disk.img -serial `tty` -nographic __NOEDITSECTION__ 551e63c6cc51498f1b201b72d53393beb93809f6 376 375 2008-09-14T23:42:07Z WikiSysop 1 wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a LinuxBIOS payload. It is the firmware implementation on the OLPC. == Download == You can [http://tracker.coreboot.org/trac/openfirmware/browser browse the source code online]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> == coreboot == You should change openfirmware/cpu/x86/pc/biosload/config.fth: Index: config.fth =================================================================== --- config.fth (revision 599) +++ config.fth (working copy) @@ -2,14 +2,14 @@ purpose: Establish configuration definitions create pc \ Demo version for generic PC -\ create pc-linux \ Demo version for generic PC and Linux +create pc-linux \ Demo version for generic PC and Linux \ create pc-serial \ Demo version for generic PC \ --- The environment that "boots" OFW --- \ - Image Format - Example Media - previous stage bootloader \ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux -create syslinux-loaded +\ create syslinux-loaded \ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload \ create bzimage-loaded @@ -19,10 +19,10 @@ \ create etherboot-variant \ Enable additional tweaks for Etherboot \ - ELF format (no pheader) - ROM - LinuxBIOS direct -\ create linuxbios-loaded +create linuxbios-loaded \ Load and run in qemu -\ create qemu-loaded +create qemu-loaded [ifdef] pc-serial create serial-console @@ -47,7 +47,7 @@ \ the point where Linux starts using the MMU. It isn't strictly \ necessary to use virtual mode if you just want to boot Linux \ and then have OFW disappear. -create virtual-mode +\ create virtual-mode create pc create linux-support [then] == Building == Software Requirements: qemu-0.9.0 + ROMSIZE-patch Open Firmware rev. >= 500 coreboot >= v2 === Patch and build qemu === Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0. tar xvfz qemu-0.9.0.tar.gz cd qemu-0.9.0 wget http://www.freimann.org/qemu_biossize.patch patch -p1 < qemu_biossize.patch Make sure that you have gcc-3.x installed, then ./config && make && make install === Build Open Firmware === Get Open Firmware from Subversion svn co svn://openbios.org/openfirmware Change to the build directory of the biosload build. cd cpu/x86/pc/biosload/ To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines create linuxbios-loaded create qemu-loaded Comment out the line with create syslinux-loaded Now change to the build directory and type "make" cd build make After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your coreboot-v[x] directory. === Build coreboot === Follow the instructions in the coreboot documentation. Make sure that you use the ofwlb.elf file as your payload. It is also very imortant that the ROMSIZE for coreboot and qemu correspond with each other. === Run it === qemu -L coreboot-v3/build -hda path/to/disk.img -serial `tty` -nographic __NOEDITSECTION__ 2ecb976596c2a704f2538fc7f14ece5d2a3a2547 377 376 2008-09-15T00:01:39Z WikiSysop 1 wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a coreboot payload. It is the firmware implementation on the OLPC. == Download == You can [http://tracker.coreboot.org/trac/openfirmware/browser browse the source code online]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openfirmware/ if you want a specific revision: $ svn co svn://openbios.org/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openfirmware-svn/ openfirmware</nowiki> == coreboot == You should change openfirmware/cpu/x86/pc/biosload/config.fth: Index: config.fth =================================================================== --- config.fth (revision 599) +++ config.fth (working copy) @@ -2,14 +2,14 @@ purpose: Establish configuration definitions create pc \ Demo version for generic PC -\ create pc-linux \ Demo version for generic PC and Linux +create pc-linux \ Demo version for generic PC and Linux \ create pc-serial \ Demo version for generic PC \ --- The environment that "boots" OFW --- \ - Image Format - Example Media - previous stage bootloader \ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux -create syslinux-loaded +\ create syslinux-loaded \ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload \ create bzimage-loaded @@ -19,10 +19,10 @@ \ create etherboot-variant \ Enable additional tweaks for Etherboot \ - ELF format (no pheader) - ROM - LinuxBIOS direct -\ create linuxbios-loaded +create linuxbios-loaded \ Load and run in qemu -\ create qemu-loaded +create qemu-loaded [ifdef] pc-serial create serial-console @@ -47,7 +47,7 @@ \ the point where Linux starts using the MMU. It isn't strictly \ necessary to use virtual mode if you just want to boot Linux \ and then have OFW disappear. -create virtual-mode +\ create virtual-mode create pc create linux-support [then] == Building == Software Requirements: qemu-0.9.0 + ROMSIZE-patch Open Firmware rev. >= 500 coreboot >= v2 === Patch and build qemu === Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0. tar xvfz qemu-0.9.0.tar.gz cd qemu-0.9.0 wget http://www.freimann.org/qemu_biossize.patch patch -p1 < qemu_biossize.patch Make sure that you have gcc-3.x installed, then ./config && make && make install === Build Open Firmware === Get Open Firmware from Subversion svn co svn://openbios.org/openfirmware Change to the build directory of the biosload build. cd cpu/x86/pc/biosload/ To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines create linuxbios-loaded create qemu-loaded Comment out the line with create syslinux-loaded Now change to the build directory and type "make" cd build make After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your coreboot-v[x] directory. === Build coreboot === Follow the instructions in the coreboot documentation. Make sure that you use the ofwlb.elf file as your payload. It is also very imortant that the ROMSIZE for coreboot and qemu correspond with each other. === Run it === qemu -L coreboot-v3/build -hda path/to/disk.img -serial `tty` -nographic __NOEDITSECTION__ 73ba9d9c34cdad48bb575ddd7d761895a22d9287 378 377 2008-09-15T09:27:43Z WikiSysop 1 wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation under a BSD license. This code shares some code with SUN's OpenBOOT implementation. It supports the x86 architecture and runs, amongst others, as a coreboot payload. It is the firmware implementation on the OLPC. == Download == You can [http://tracker.coreboot.org/trac/openfirmware/browser browse the source code online]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openfirmware.info/openfirmware/ if you want a specific revision: $ svn co svn://openfirmware.info/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openfirmware.info/openfirmware-svn/ openfirmware</nowiki> == coreboot == You should change openfirmware/cpu/x86/pc/biosload/config.fth: Index: config.fth =================================================================== --- config.fth (revision 599) +++ config.fth (working copy) @@ -2,14 +2,14 @@ purpose: Establish configuration definitions create pc \ Demo version for generic PC -\ create pc-linux \ Demo version for generic PC and Linux +create pc-linux \ Demo version for generic PC and Linux \ create pc-serial \ Demo version for generic PC \ --- The environment that "boots" OFW --- \ - Image Format - Example Media - previous stage bootloader \ - (Syslinux) COM32 format - USB Key w/ FAT FS - Syslinux -create syslinux-loaded +\ create syslinux-loaded \ - Linux kernel format - USB Key w/ FAT FS - LinuxBIOS w/ stripped Linux payload \ create bzimage-loaded @@ -19,10 +19,10 @@ \ create etherboot-variant \ Enable additional tweaks for Etherboot \ - ELF format (no pheader) - ROM - LinuxBIOS direct -\ create linuxbios-loaded +create linuxbios-loaded \ Load and run in qemu -\ create qemu-loaded +create qemu-loaded [ifdef] pc-serial create serial-console @@ -47,7 +47,7 @@ \ the point where Linux starts using the MMU. It isn't strictly \ necessary to use virtual mode if you just want to boot Linux \ and then have OFW disappear. -create virtual-mode +\ create virtual-mode create pc create linux-support [then] == Building == Software Requirements: qemu-0.9.0 + ROMSIZE-patch Open Firmware rev. >= 500 coreboot >= v2 === Patch and build qemu === Get the patch from http://www.freimann.org/qemu_biossize.patch and apply it against qemu-0.9.0. tar xvfz qemu-0.9.0.tar.gz cd qemu-0.9.0 wget http://www.freimann.org/qemu_biossize.patch patch -p1 < qemu_biossize.patch Make sure that you have gcc-3.x installed, then ./config && make && make install === Build Open Firmware === Get Open Firmware from Subversion svn co svn://openfirmware.info/openfirmware Change to the build directory of the biosload build. cd cpu/x86/pc/biosload/ To change the config file of Open Firmware you can either use the above patch, or you can edit config.fth with your favorite editor (vi!!1!). Uncomment the lines create linuxbios-loaded create qemu-loaded Comment out the line with create syslinux-loaded Now change to the build directory and type "make" cd build make After make is finished there should be a file "ofwlb.elf" in the same directory. Copy this to your coreboot-v[x] directory. === Build coreboot === Follow the instructions in the coreboot documentation. Make sure that you use the ofwlb.elf file as your payload. It is also very imortant that the ROMSIZE for coreboot and qemu correspond with each other. === Run it === qemu -L coreboot-v3/build -hda path/to/disk.img -serial `tty` -nographic __NOEDITSECTION__ == Mailing List == There's an Open Firmware mailing list at: * http://www.openfirmware.info/mailman/listinfo/openfirmware. The mailing list archive is also available: * http://www.openfirmware.info/pipermail/openfirmware/ 83a0176d1e41c9d23637c1ea9a688d9cc138a914 OpenBIOS 0 16 172 171 2007-08-12T10:48:36Z Stepan 2 /* FCode Suite */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays). = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] 40dd425cd1b8d127afbff1507d0234755ef4996c 173 172 2007-08-12T10:50:49Z Stepan 2 /* More on Subversion */ wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays). = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-suite If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-suite</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ a399f1174befab7859d04188459927c686599638 174 173 2008-01-28T20:22:10Z Stepan 2 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly LinuxBIOS issues nowadays). = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://www.openbios.org/viewvc/openbios-devel.tar.gz?view=tar&root=OpenBIOS&pathrev=131 OpenBIOS 1.0alpha2] (2007-04-27) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-utils If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://www.openbios.org/viewvc/?root=OpenBIOS OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://www.openbios.org/viewvc/?root=OpenBIOS source code browser] to download a gzipped tar archive of any revision. Alternatively you can also download the [http://www.openbios.org/viewvc/openbios-devel.tar.gz?root=OpenBIOS&view=tar most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ 52d27f41918b8e45c62d5397ad757520f58c452b 175 174 2008-09-14T23:22:02Z WikiSysop 1 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly coreboot issues nowadays). = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/131/openbios-devel?old_path=%2F&old=131&format=zip OpenBIOS 1.0alpha2] (2007-04-27) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a LinuxBIOS snapshot and use the [[FlashRom|flashrom utility]] from ''LinuxBIOSv2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-utils If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ be00e7ccdf234c614533c8901ef70b8cfb0810bc 176 175 2008-09-14T23:48:33Z WikiSysop 1 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://bugzilla.openbios.org/ OpenBIOS issue tracker] for milestones, tasks and open bugs (mostly coreboot issues nowadays). = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/131/openbios-devel?old_path=%2F&old=131&format=zip OpenBIOS 1.0alpha2] (2007-04-27) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-utils If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ 716c46f38a4062a4d0f9a29919785297b66cd56b FlashRom 0 25 335 334 2007-08-12T10:49:25Z Stepan 2 /* Flash Updates in Linux */ wikitext text/x-wiki {{stub}} __NOTOC__ = Flash Updates in Linux = Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update. Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://linuxbios.org LinuxBIOS project] and evolved to work with non-SIS chipsets. [[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel. You can download the latest version of '''flashrom''' [http://www.openbios.org/viewvc/trunk/util/flashrom.tar.gz?view=tar from the LinuxBIOS svn repository] b35bbebe3564c282f743c7e80f42c0f536cbc272 336 335 2008-09-14T23:58:49Z WikiSysop 1 wikitext text/x-wiki {{stub}} __NOTOC__ = Flash Updates with Linux = Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update. Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://www.coreboot.org coreboot project] and evolved to work with non-SIS chipsets. [[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel. For more information about flashrom see http://www.coreboot.org/Flashrom f41bed567df0bf76372b548ec8881912a1d8b140 SmartFirmware 0 31 358 357 2007-08-12T10:50:23Z Stepan 2 /* Download */ wikitext text/x-wiki == Introduction == In 2006 [http://codegen.com/ CodeGen, Inc] released their Open Firmware implementation under a BSL like license. Their code, entirely written in ANSI C, contains the following components: * [http://www.codegen.com/SmartFirmware/index.html SmartFirmware™]: an ANSI C implementation of the IEEE-1275 Open Firmware boot firmware standard. Dramatically reduce and ease your firmware development and system bring-up times and costs. * An [http://www.codegen.com/SmartFirmware/ccfcode.html ANSI C compiler] that generates Open Firmware compatible Forth/Fcode makes it easy to develop drivers for PCI cards and PMC modules. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=SmartFirmware ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/smartfirmware/ if you want a specific revision: $ svn co svn://openbios.org/smartfirmware -r 1 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/smartfirmware-svn/ smartfirmware</nowiki> __NOEDITSECTION__ bdd34c11e2032954bd34cf01af244d2a7c016162 359 358 2008-09-14T23:27:56Z WikiSysop 1 wikitext text/x-wiki == Introduction == In 2006 [http://codegen.com/ CodeGen, Inc] released their Open Firmware implementation under a BSL like license. Their code, entirely written in ANSI C, contains the following components: * [http://www.codegen.com/SmartFirmware/index.html SmartFirmware™]: an ANSI C implementation of the IEEE-1275 Open Firmware boot firmware standard. Dramatically reduce and ease your firmware development and system bring-up times and costs. * An [http://www.codegen.com/SmartFirmware/ccfcode.html ANSI C compiler] that generates Open Firmware compatible Forth/Fcode makes it easy to develop drivers for PCI cards and PMC modules. == Download == You can [http://tracker.coreboot.org/trac/smartfirmware/browser browse the code online]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/smartfirmware/ if you want a specific revision: $ svn co svn://openbios.org/smartfirmware -r 1 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/smartfirmware-svn/ smartfirmware</nowiki> __NOEDITSECTION__ 00889821ec18602119a9313b5a5c7e9fd6a81283 OpenBOOT 0 32 363 362 2007-08-12T10:50:35Z Stepan 2 /* Download */ wikitext text/x-wiki == Introduction == In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor. == Download == The code can be browsed online with the [http://openbios.org/viewvc/?root=OpenBOOT ViewVC facility]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openboot/ if you want a specific revision: $ svn co svn://openbios.org/openboot -r 1 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki> __NOEDITSECTION__ 2deaf6519b431f84412fcd219faa51a9f0a4a0c9 364 363 2008-09-14T23:44:27Z WikiSysop 1 wikitext text/x-wiki == Introduction == In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor. == Download == You can [http://tracker.coreboot.org/trac/openboot/browser browse the source code online]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openbios.org/openboot/ if you want a specific revision: $ svn co svn://openbios.org/openboot -r 1 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openboot-svn/ openboot</nowiki> __NOEDITSECTION__ a837bd89244de4c61f8e084a9467253d6ea3814a FCODE suite 0 17 263 262 2007-08-12T10:51:55Z Stepan 2 /* Coverage Reports */ wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=113 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2] See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created. There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. Run the unit-test cases with $ make tests === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] __NOEDITSECTION__ 4bbfa432849713150aff0785399dff0b250e53d3 264 263 2008-07-11T12:02:01Z Stepan 2 wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=113 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2] See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=111&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created. There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. Run the unit-test cases with $ make tests === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] == Kudos and Thanks == <div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:dlpaktor@netscape.net|David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!''' </div> __NOEDITSECTION__ dd9a95aa7064c59c2cff0673b08744a6c53c2c0d 265 264 2008-07-11T23:24:39Z Stepan 2 wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=197 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2] See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=197&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created. There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. Run the unit-test cases with $ make tests === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] == Kudos and Thanks == <div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:dlpaktor@netscape.net|David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!''' </div> __NOEDITSECTION__ c6fc366b4faeafcc1ed9d945acb65e044d47b520 266 265 2008-07-11T23:25:36Z Stepan 2 wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=197 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2] See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=197&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created. There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. Run the unit-test cases with $ make tests === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] == Kudos and Thanks == <div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:dlpaktor@netscape.net David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!''' </div> __NOEDITSECTION__ 0dd7d11448deb4afc1e3142ea94d96149d1b67f2 267 266 2008-07-16T12:11:09Z DavidPaktor 3 Updated David Paktor's email address wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://www.openbios.org/viewvc/fcode-utils/?root=OpenBIOS&pathrev=197 Sources] online. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils.tar.gz?view=tar&root=OpenBIOS&pathrev=113 FCode-utils 1.0.2] See the [http://www.openbios.org/viewvc/fcode-utils/ChangeLog?revision=197&root=OpenBIOS&view=markup ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a Tar-File: [http://www.openbios.org/viewvc/fcode-utils/documentation.tar.gz?root=OpenBIOS&view=tar Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created. There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://www.openbios.org/viewvc/fcode-utils/localvalues/?root=OpenBIOS Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesSupport.fth?root=OpenBIOS&view=markup basic functionality] * the second adds a [http://www.openbios.org/viewvc/fcode-utils/localvalues/LocalValuesDevelSupport.fth?root=OpenBIOS&view=markup development-time facility] * the third generates a variant behavior ([http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValues.fth?root=OpenBIOS&view=markup "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://www.openbios.org/viewvc/fcode-utils/localvalues/GlobalLocalValuesDevel.fth?root=OpenBIOS&view=markup combines the "Global" variant behavior with the development-time facility]. * The fifth [http://www.openbios.org/viewvc/fcode-utils/localvalues/TotalLocalValuesSupport.fth?root=OpenBIOS&view=markup allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate Tar-File: [http://www.openbios.org/viewvc/fcode-utils/localvalues.tar.gz?root=OpenBIOS&view=tar localvalues.tar.gz] === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://www.openbios.org/viewvc/fcode-utils/TODO?root=OpenBIOS&view=co collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://www.openbios.org/viewvc/fcode-utils/testsuite/?root=OpenBIOS accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. Run the unit-test cases with $ make tests === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoExec?root=OpenBIOS&view=markup AutoExec] automates the execution, and * [http://www.openbios.org/viewvc/fcode-utils/testsuite/AutoCompare?root=OpenBIOS&view=markup AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-x86-cygwin/?root=OpenBIOS X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-linux/?root=OpenBIOS PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://www.openbios.org/viewvc/fcode-utils/testlogs/testlogs-ppc-aix/?root=OpenBIOS PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] == Kudos and Thanks == <div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:David@paktor.biz David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!''' </div> __NOEDITSECTION__ 6d18fa0e44144056fdfad013d5e2448ec024271d 268 267 2008-09-14T23:18:50Z WikiSysop 1 wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils?rev=197 Sources] online. Available as a ZIP-File: [http://tracker.coreboot.org/trac/openbios/changeset/197/fcode-utils?old_path=%2F&old=197&format=zip FCode-utils 1.0.2] See the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/ChangeLog?rev=197 ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a ZIP-File: [http://tracker.coreboot.org/trac/openbios/changeset/236/fcode-utils/documentation?old_path=%2F&old=&format=zip Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created. There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues/LocalValuesSupport.fth basic functionality] * the second adds a [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate [http://tracker.coreboot.org/trac/openbios/changeset/236/fcode-utils/localvalues?old_path=%2F&format=zip ZIP-File]. === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/TODO collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/testsuite accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. Run the unit-test cases with $ make tests === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/testsuite/AutoExec AutoExec] automates the execution, and * [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/testsuite/AutoCompare AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/testlogs/testlogs-x86-cygwin X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/testlogs/testlogs-ppc-linux PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/testlogs/testlogs-ppc-aix PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] == Kudos and Thanks == <div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:David@paktor.biz David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!''' </div> __NOEDITSECTION__ 0e28bd977c4b2c359d21515a1f4f0291b9427324 Forth/FCode 0 19 282 281 2007-08-12T10:52:57Z Stepan 2 /* Why bytecode? */ wikitext text/x-wiki __NOTOC__ = What is Forth? = From the [http://www.faqs.org/faqs/computer-lang/forth-faq/part1/ Forth FAQ]: Forth is a stack-based, extensible language without type-checking. It is probably best known for its "reverse Polish" (postfix) arithmetic notation, familiar to users of Hewlett-Packard calculators: to add two numbers in Forth, you would type 3 5 + instead of 3+5. The fundamental program unit in Forth is the "word": a named data item, subroutine, or operator. Programming in Forth consists of defining new words in terms of existing ones. = Why and where is Forth used? = Although invented in 1970, Forth became widely known with the advent of personal computers, where its high performance and economy of memory were attractive. These advantages still make Forth popular in embedded microcontroller systems, in locations ranging from the Space Shuttle to the bar-code reader used by your Federal Express driver. Forth's interactive nature streamlines the test and development of new hardware. Incremental development, a fast program-debug cycle, full interactive access to any level of the program, and the ability to work at a high "level of abstraction," all contribute to Forth's reputation for very high programmer productivity. These, plus the flexibility and malleability of the language, are the reasons most cited for choosing Forth for embedded systems. Find more information [http://www.complang.tuwien.ac.at/forth/faq/why-forth here]. = FCode = FCode is a Forth dialect compliant to ANS Forth, that is available in two different forms: source and bytecode. FCode bytecode is the compiled form of FCode source. = Why bytecode? = Bytecode is small and efficient. And an evaluator (bytecode virtual machine) is almost trivial to implement. For example, putting a 1 to the stack only takes one byte in an FCode bytecode binary. This is especially valuable on combined system or expansion hardware roms where the available space is limited. __NOEDITSECTION__ 4d1839874cca41d5f8d862a6280a1f3890383712 On the Net 0 20 302 301 2007-08-12T10:53:45Z Stepan 2 /* Open Firmware Companies/Vendor support */ wikitext text/x-wiki __NOTOC__ == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] * [http://www.coresystems.de coresystems GmbH] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://linuxbios.org/ LinuxBIOS]) == Other Open Source Firmware Implementations == * [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation * redboot * SLOF * Open Hackware * SUN OpenBoot * GBIOS - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * [http://www.qemu.com/ QEMU] * [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization * [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator * [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux * Hypervisor * ... f35d393697df6dfc9ae1386660860e56f5ca3721 303 302 2007-08-12T11:00:08Z Stepan 2 /* Other Open Source Firmware Implementations */ wikitext text/x-wiki __NOTOC__ == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] * [http://www.coresystems.de coresystems GmbH] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://linuxbios.org/ LinuxBIOS]) == Other Open Source Firmware Implementations == * [http://linuxbios.org/ LinuxBIOS] - The LinuxBIOS project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation * [http://cygwin.com/redboot/ redboot] * SLOF * [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware] * SUN OpenBoot * [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * [http://www.qemu.com/ QEMU] * [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization * [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator * [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux * Hypervisor * ... a3381c010bc73d0a606683a8b84475d89bd3cebf 304 303 2008-09-14T23:49:20Z WikiSysop 1 wikitext text/x-wiki __NOTOC__ == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] * [http://www.coresystems.de coresystems GmbH] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.phys.virginia.edu/classes/55.jvn.fall01/primer.htm Primer] - A Beginner's Guide to Forth by J.V. Noble * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://www.coreboot.org/Flashrom coreboot]) == Other Open Source Firmware Implementations == * [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation * [http://cygwin.com/redboot/ redboot] * SLOF * [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware] * SUN OpenBoot * [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * [http://www.qemu.com/ QEMU] * [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization * [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator * [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux * Hypervisor * ... 1c9d29ef3f33aa4626552c9d15c3681f9b421c18 Welcome to OpenBIOS 0 2 40 39 2008-07-16T12:07:49Z DavidPaktor 3 Update David Paktor's email address wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://linuxbios.org/ LinuxBIOS] or [http://u-boot.sourceforge.net/ U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 1087c2b63331a8fe2700bbbd22f96d5189cfb494 41 40 2008-09-14T23:45:49Z WikiSysop 1 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://u-boot.sourceforge.net/ U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 0615b9d6b5d454b72f30c8f7318ab1ca6c32fbbe 42 41 2008-09-15T09:19:39Z WikiSysop 1 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://www.denx.de/wiki/U-Boot U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.coreboot.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [OpenBOOT local mirror] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 60957a6e78b9a4f5a54168dce6fab48009562dcd 43 42 2008-09-15T09:20:42Z WikiSysop 1 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, IBM and others. In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://www.denx.de/wiki/U-Boot U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.coreboot.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website] to download the full archive (190MB) or check out our [[OpenBOOT|local mirror]] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 62375378ff6b973a9bb2d581451d0ad3e07a04e3 44 43 2008-09-15T09:21:30Z WikiSysop 1 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, [[SLOF|IBM]] and others. In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://www.denx.de/wiki/U-Boot U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.coreboot.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website] to download the full archive (190MB) or check out our [[OpenBOOT|local mirror]] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 25b45f03e56b9fed945f62bfde1f9b10a1983c58 Credits 0 13 103 102 2008-07-16T22:05:04Z DavidPaktor 3 Add email address for David Paktor wikitext text/x-wiki Development contributions Development contributions * Stefan Reinauer (project coordination, main development) * Patrick Mauritz (initial kernel work) * Samuel Rydh (forth interfaces, MOL port, ...) * Greg Watson (briq port) * [mailto:David@paktor.biz David Paktor] (improving Toke) * Chen-Chau Chu (ppc fixes) * Tim Barrett (detok patches) * Krishna Myneni (permission to include kForth examples with toke) Hardware/Funding * Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development. * [http://www.linuxfund.org/ LinuxFund.org] chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work! * [http://www.newisys.com/ Newisys] funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openbios.org and www.linuxbios.org. * [http://sase.de/ Daniele Frijia] for donating a Motorola PPC-machine If you or somebody else is missing on this list, send an email to Stefan Reinauer bc252a6d48eda53c5f933587ad0b6401869dece7 104 103 2008-09-14T23:47:55Z WikiSysop 1 wikitext text/x-wiki Development contributions Development contributions * Stefan Reinauer (project coordination, main development) * Patrick Mauritz (initial kernel work) * Samuel Rydh (forth interfaces, MOL port, ...) * Greg Watson (briq port) * [mailto:David@paktor.biz David Paktor] (improving Toke) * Chen-Chau Chu (ppc fixes) * Tim Barrett (detok patches) * Krishna Myneni (permission to include kForth examples with toke) Hardware/Funding * Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development. * [http://www.linuxfund.org/ LinuxFund.org] chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work! * [http://www.newisys.com/ Newisys] funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openfirmware.info and www.coreboot.org. * [http://sase.de/ Daniele Frijia] for donating a Motorola PPC-machine If you or somebody else is missing on this list, send an email to Stefan Reinauer 6aff354e7732ac77a3e1fcea3ca89de144285051 News 0 24 330 329 2008-07-16T22:07:33Z DavidPaktor 3 Updated David Paktor's email address wikitext text/x-wiki '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:David@paktor.biz David Paktor] sent a new fork of the [[FCODE suite|OpenBIOS FCODE suite]]. After only a couple of days we finally got this merged into the official code base. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.linuxbios.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:David@paktor.biz David Paktor], on behalf of the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website]] to download the full archive (190MB) or check out our [http://www.openbios.org/~stepan/sun-obp.tar.bz2 local mirror] (1.7MB). '''New FCODE suite available''' (2006-08-08) [mailto:David@paktor.biz David Paktor], on behalf of the IBM Corporation, contributed some groundbreaking feature updates to the OpenBIOS FCODE utilities toke, detok and romheaders. Find details and binaries here '''Sparc32 support in development''' (2006-05-05) OpenBIOS has a port for 32bit Sparc CPUs now. The initially targeted milestone is to get a full firmware implementation for the QEMU project. '''OpenBIOS switched to Subversion''' (2006-04-26) See the [[Download|development repository]] for more information. '''Bugfix version of tokenizer toke''' (2005-10-15) Version 0.6.10 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New version of toke''' (2005-10-05) Version 0.6.9 of the OpenBIOS tokenizer toke has been released. This is a bugfix release. '''New versions of toke and detok''' (2005-03-10) New versions of the OpenBIOS utilities have been released: The tokenizer toke 0.6.8 and the detokenizer detok 0.6.1. '''Stallman calls for action on Free BIOS''' (2005-02-26) FSF President Richard M. Stallman was calling for action on free BIOS in his speech at FOSDEM 2005. Read about The Free Software Foundation's Campaign for Free BIOS. ''' Portability and cross development''' (2005-01-12) OpenBIOS is pushing towards new hardware platforms. Improvements in the cross compilation ability of OpenBIOS are currently merged into a seperate development tree. This will allow to develop and test OpenBIOS for ARM, PPC, AMD64 and others just using an ordinary PC. '''OpenBIOS boots, part II''' (2004-08-01) After some major cleanup, OpenBIOS now also boots on real PPC hardware: The Total Impact Briq. '''Linux Tag''' (2004-06-27) The OpenBIOS team went to the LinuxTag, hacking and chatting at the Forth e.V. booth. OpenBIOS can run forth files from a filesystem now and it has a preliminary PCI driver. '''OpenBIOS boots''' (2004-05-23) After many bugfixes OpenBIOS booted Linux on real hardware now (AMD64 and x86). '''IDE support''' (2004-01-23) Jens Axboe wrote an IDE driver for OpenBIOS. This will help OpenBIOS to boot on real hardware soon. '''Device and Client Interface''' (2004-01-10) OpenBIOS' interfaces for device and client (OS) interaction are basically finished. When used in MacOnLinux (MOL), OpenBIOS can boot MacOS and Linux. '''Bitkeeper repository''' (2003-12-20) Most of OpenBIOS moved to a bitkeeper repository. Check out bk://openbios.bkbits.net/unstable for the latest development tree. '''Toke and Detok update''' (2003-11-29) Toke and Detok, OpenBIOS' FCode toolchain, have been updated. Toke can now be used to directly create PCI Option ROMs with FCode. Both toke and detok got a couple of bugfixes and integrate cleanly in the OpenBIOS build process now. '''OpenBIOS forth kernel 1.1''' (2003-10-12) After the first release here's an update with some fixes, optimized speed and a plugin system that allows easier development under a Linux/Unix system. '''OpenBIOS forth kernel released''' (2003-09-16) After some months of development we are happy to announce the new OpenBIOS forth kernel "BeginAgain". '''New domain: openbios.org!''' (2003-08-23) We got it! After many years of hazzling with a domain grabber we finally got the domain [http://openbios.org/ openbios.org]. '''dictionary dumping''' (2002-10-16) OpenBIOS' forth kernel paflof knows how to dump dictionaries now. Read more information on how to use this feature in the [[Mailinglist|mailing list archive]]. '''LinuxFund.org''' (2002-07-04) OpenBIOS is one out of three projects funded in LinuxFund.org's Spring Grant Cycle 2002. The Development Grant of $1000 will be used to advance the project. '''toke and detok update''' (2002-05-26) Toke 0.4 and detok 0.5.2 have been released. Detok has some new features, such as line numbers or byte offsets, proper checksum calculations, 64bit opcodes and several bug fixes. Toke comes with better error messages, working case...endcase constructs, improved number parsing, better IEEE compliance and less bugs. '''toke 0.2 released''' (2002-03-20) The new version of toke is quite an improvement compared to the last release. Most of the missing control words and tokenizer directives are supported now, string handling was improved, error messages and warnings contain line numbers etc. This component needs heavy testing. '''toke 0.1 released''' (2002-03-04) Time is passing by and the OpenBIOS project has a tokenizer now. Even though some things are yet missing, it is capable to tokenize quite a huge amount of test code fed into it. '''detok 0.3 released''' (2002-02-26) The IEEE-1275 FCode detokenizer got some cleanup. Dictionary is no more autogenerated, memory consumption reduced by almost 70%. '''/dev/bios 0.3.2 released''' (2002-02-19) After having almost no releases in the last 2 years, /dev/bios shows up in version 0.3.2 now. It has support for NSC CS5530(A), AMD 7xx, ServerWorks, Intel 4x0/8xx and other chipsets. '''new version of /dev/bios available''' (2002-02-15) The kernel level firmware flasher /dev/bios is under control of the OpenBIOS CVS now. /dev/bios now supports quite a big number of motherboard chipsets. '''new version of feval released''' (2001-12-16) FCode evaluator feval-0.2.6 released. This is a bug fix release. '''Talk to us LIVE!''' (2001-12-03) Yesterday we moved from IRCNet to irc.freenode.net. You can talk with us at #OpenBIOS usually all the day (CET timezone) '''new version of detok released''' (2001-12-02) FCode detokenizer detok-0.2.3 released. This version should compile on any ANSI C Compiler and has corrected FCode names. Check the status page for more details. '''OpenBIOS is now under control of CVS''' (2001-11-12) The OpenBIOS development CVS is up and running. '''new version of feval released''' (2001-11-08) FCode evaluator feval-0.2.5 released. This version has preliminary package support. '''new version of detok released''' (2001-10-15) FCode detokenizer detok-0.2.2 released. This version fixes indentation and a string allocation error. '''new version of detok and feval released''' (2001-09-16) Update: FCode evaluator feval-0.2 and detokenizer detok-0.2.1 available now. '''we now have a detokenizer''' (2001-09-09) There's a first version of an fcode detokenizer now. This is the first part of the OpenBIOS development suite. '''general news on bios-coding''' (2000-02-13) The LinuxBIOS Project replace the firmware of their Rockhopper cluster machines with a special Linux kernel image, and instead of running the BIOS on startup they run Linux. For information and patches, check out their homepage at http://www.linuxbios.org/. '''older news are not available. please notify [[User:Stepan|Stefan Reinauer]] if you are missing information in here.''' 04fc7f07dbebcc15fe08af2fd4c3419de4344a7d Code of Conduct 0 12 98 97 2008-09-12T21:33:43Z Stepan 2 [[Project Statement]] moved to [[Code of Conduct]] wikitext text/x-wiki Dear OpenBIOS project members and other interested parties, For the ease of development and for information on what can be expected from this project we want to set down the following ground rules in order to achieve a high quality implementation of our project objectives. 1. The objective of this project is to develop a free, open source, architecture independant firmware implementation following, if possible, the IEEE Standard for Boot (Initialization Configuration) Firmware (IEEE 1275-1994). Including not only the implementation of the standard itself but also the required toolkit consisting of a C to FCode compiler, an FCode tokenizer and an FCode detokenizer. This toolkit will simplify driver and API development implementing ANSI C as the development language instead of implementing Forth/FCode directly as suggested by the IEEE standard. 2. We cannot allow _any_ discussion or use of _any_ copyrighted, patented, or otherwise protected Firmware or BIOS implementations without an OSI approved license in this project or on the mailing list associated with this project. All members of this project and/or the according mailing lists agree to not disclose or use any copyrighted, patented, or otherwise protected information, ideas or concepts. 3. We do not intend to implement any of the ideas or concepts expressed in the current Intel 32bit architechture, except when these are necessary to insure the compatability with existing hardware. Such ideas and concepts will only be used if such use is not restricted by _any_ laws, copyrights or patents. 4. In order to assure truly universal implementation and/or optimize the functionality and performance it is our expressed wish to work in conjunction with other open source (firmware) projects, such as LinuxBIOS or U-Boot. 5. Cooperation with hardware vendors is necessary to implement this project on an architecture-independent basis. In certain cases this may include signing non-disclosure agreements with the aforementioned hardware vendors in an attempt to acquire hardware specific information or support that may not otherwise be available although the results of such cooperation must be freely redistributable. 6. Cooperation with any university, research project, or organization is desired except in such cases where the resulting information is restricted in use or redistributability. If, for whatever reasons, any of the above statements are unacceptable or seem to be incorrect or unclear in _any_ way please do not hesitate to discuss this matter on the mailing list, we are open for suggestions. This is simply an attempt to assure the legal status of this project, protecting those involved from legal prosecution as well as to state the general objectives of the project. OpenBIOS development team. 1d3ac3c0e6df55f959e72052405fa96b90e52e52 99 98 2008-09-14T23:47:18Z WikiSysop 1 wikitext text/x-wiki Dear OpenBIOS project members and other interested parties, For the ease of development and for information on what can be expected from this project we want to set down the following ground rules in order to achieve a high quality implementation of our project objectives. 1. The objective of this project is to develop a free, open source, architecture independant firmware implementation following, if possible, the IEEE Standard for Boot (Initialization Configuration) Firmware (IEEE 1275-1994). Including not only the implementation of the standard itself but also the required toolkit consisting of a C to FCode compiler, an FCode tokenizer and an FCode detokenizer. This toolkit will simplify driver and API development implementing ANSI C as the development language instead of implementing Forth/FCode directly as suggested by the IEEE standard. 2. We cannot allow _any_ discussion or use of _any_ copyrighted, patented, or otherwise protected Firmware or BIOS implementations without an OSI approved license in this project or on the mailing list associated with this project. All members of this project and/or the according mailing lists agree to not disclose or use any copyrighted, patented, or otherwise protected information, ideas or concepts. 3. We do not intend to implement any of the ideas or concepts expressed in the current Intel 32bit architechture, except when these are necessary to insure the compatability with existing hardware. Such ideas and concepts will only be used if such use is not restricted by _any_ laws, copyrights or patents. 4. In order to assure truly universal implementation and/or optimize the functionality and performance it is our expressed wish to work in conjunction with other open source (firmware) projects, such as coreboot or U-Boot. 5. Cooperation with hardware vendors is necessary to implement this project on an architecture-independent basis. In certain cases this may include signing non-disclosure agreements with the aforementioned hardware vendors in an attempt to acquire hardware specific information or support that may not otherwise be available although the results of such cooperation must be freely redistributable. 6. Cooperation with any university, research project, or organization is desired except in such cases where the resulting information is restricted in use or redistributability. If, for whatever reasons, any of the above statements are unacceptable or seem to be incorrect or unclear in _any_ way please do not hesitate to discuss this matter on the mailing list, we are open for suggestions. This is simply an attempt to assure the legal status of this project, protecting those involved from legal prosecution as well as to state the general objectives of the project. OpenBIOS development team. ac56c91344f7dda35b88c6a64921090784a61102 Project Statement 0 38 392 2008-09-12T21:33:43Z Stepan 2 [[Project Statement]] moved to [[Code of Conduct]] wikitext text/x-wiki #REDIRECT [[Code of Conduct]] f8561aaaab864da22207bc160a92fd7bec2a85e9 MediaWiki:Sidebar 8 7 74 73 2008-09-12T21:42:01Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Code of Conduct|Code of Conduct ** Credits|Credits ** Licensing|Licensing * Implementations ** Open Firmware|Open Firmware ** SmartFirmware|Smart Firmware ** OpenBOOT|OpenBOOT ** OpenBIOS|OpenBIOS ** SLOF|SLOF * Development ** FCODE suite|FCODE suite ** BeginAgain|Kernel ** FlashRom|Flashing ** http://bugzilla.openbios.org/|Issues/Bugs ** Low Level Firmware * Documentation ** IEEE 1275-1994|Open Firmware ** Bindings|Bindings and Supplements ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 6088d1d085451617153df637c82ee733e970e267 Contact us 0 10 91 90 2008-09-14T23:47:03Z WikiSysop 1 wikitext text/x-wiki == The OpenBIOS Project == The OpenBIOS project coordinates all free and open source implementations of the Open Firmware standard. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, write documentation. * need help porting Open Firmware to your custom hardware and are looking for specialists to get it done. Of course we appreciate any help, hints, patches, comments, etc. NOTE: Please read our [[Project Statement]]. == Mailinglist == Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #coreboot. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, coreboot, firmware and related topics are welcome. == Project Maintainer == The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]] __NOTOC__ __NOEDITSECTION__ 7c15f6702c6435bfb20b28e644bd8be6a985ba32 92 91 2008-09-15T09:22:42Z WikiSysop 1 wikitext text/x-wiki == The OpenBIOS Project == The OpenBIOS project coordinates all free and open source implementations of the Open Firmware standard. Yet our development team is rather small. You are welcome to contact us, if you * want to help developing drivers, support for new systems, write documentation. * need help porting Open Firmware to your custom hardware and are looking for specialists to get it done. Of course we appreciate any help, hints, patches, comments, etc. NOTE: Please read our [[Code of Conduct]]. == Mailinglist == Development and other things about OpenBIOS are discussed on the [[mailinglist|OpenBIOS mailing list]]. If you want to contribute, ask questions, get information or have some ideas, please subscribe to this list. It's currently very low traffic. If you have patches, feel free to send them to the list, too. Please note: To keep the amount of spam as low as possible, only subscribed users are allowed to post to the list. == Internet Relay Chat == Currently most of the discussion moved over to Internet Relay Chat (IRC). You can find us on [http://www.freenode.net/ irc.freenode.net] in #coreboot. Most people are in CET timezone, so don't give up when this channels seems very quiet for some time. Here you have the chance to talk to people being involved or interested in this project. Most of the discussion is tech talk. There's no need to ask whether you are allowed to ask. Questions on OpenBIOS, coreboot, firmware and related topics are welcome. == Project Maintainer == The OpenBIOS Project is maintained by [[User:Stepan|Stefan Reinauer]] from [http://www.coresystems.de coresystems GmbH]. If you have any questions regarding the project that are beyond the scope of the mailing list, please contact [[User:Stepan|Stefan]] __NOTOC__ __NOEDITSECTION__ 1c5d5cb837ebc300cc34b651cd1c7271ee5b292a BeginAgain 0 23 318 317 2008-09-14T23:57:22Z WikiSysop 1 wikitext text/x-wiki = What is BeginAgain? = BeginAgain is the Forth kernel, basically the heart of OpenBIOS. Right after the system is far enough to execute any C code, this kernel will take over control and execute the forth code part of OpenBIOS. BeginAgain supports the Forth language command group of IEEE 1275-1994 and passes the Hayes ANS forth compliance test. = How does BeginAgain work? = The OpenBIOS forth core "BeginAgain" is split into a forth kernel written in C and a forth dictionary which operated on by the kernel. BeginAgain's approach is indirect threading. Forth words are compiled to execution tokens (pointers to the words dictionary entries). Only the prim words (minimal language support) are available as native C code. When building the forth core, you get different versions of the forth kernel: * a "hosted" unix binary. This binary can be used on a unix system: ** to execute a forth dictionary from a file. This can be used for testing openbios code in a development environment on a unix host. ** to create a dictionary file. Such a dictionary file sets up all of the forth language. Primitives are indexed to save relocations. The default is to create a forth dictionary forth.dict from forth/start.fs. This file includes all of the basic forth language constructs from forth/bootstrap.fs and starts the interpreter. To achieve this, the hosted unix version contains a basic set of forth words coded in C that allow creating a full dictionary. * a varying number of target specific binaries. On x86 you can start openbios for example from GRUB or coreboot. They are all based on the same forth engine consisting of a dictionary scheduler, primitive words needed to build the forth environment, 2 stacks and a simple set of console functions. These binaries can not be started directly in the unix host environment. = Building and Using BeginAgain = == Requirements == * gcc * grub or any other multiboot loader to run the standalone binary "openbios.multiboot" == Building and Usage == * make this builds "openbios.multiboot", the standalone image and "unix", the hosted image. Additionally it creates a forth dictionary file from forth/start.fs. All generated files are written to the absolute directory held by the variable BUILDDIR, which defaults to obj-[platform]. Some compile time parameters can be tweaked in include/config.h * use "unix" to create a forth dictionary on your own: $ ./unix -Iforth start.fs creates the file forth.dict from forth source forth/start.fs. * use "unix" to run a created dictionary: $ ./unix forth.dict This is useful for testing. * booting openbios You can boot openbios i.e. in grub. Add the following lines to your menu.lst: title openbios kernel (hd0,2)/boot/openbios.multiboot module (hd0,2)/boot/openfirmware.dict Note: change (hd0,2) to the partition you copied openbios and forth.dict to. To boot OpenBIOS from coreboot/etherboot, you can either use "openbios" or "openbios.full": * openbios is the pure kernel that loads the dictionary from a hardcoded address in flash memory (0xfffe0000) * openbios.full also includes the dictionary directly so that it can be easily used from etherboot or the coreboot builtin ELF loader without taking care of the dictionary = Dictionary Format = The dictionary is a linked list of forth word definitions. Each forth word in this list looks like the following: name length of name in bytes + 0x80 align with 0's flags (bit 7 set) LFA CFA PFA When the forth interpreter looks for a certain word, it reads the variable last that always points to the last defined word and iterates over the list until it finds an appropriate word. = Glossary = == Dictionary == * LFA == link field address (backlink) * CFA == code field address ("word type") * PFA == program field address (definitions) == Forth Engine == * TIB == text input buffer * inner interpreter: interprets dictionary, does threading * outer interpreter: "user" interpreter, reads forth words from user. acf749afaa28f4c94ccbc4901b6ce333d71e3e81 File:StefanReinauer.jpg 6 39 393 2008-09-15T09:29:18Z WikiSysop 1 New picture wikitext text/x-wiki New picture 25a7b066c9963a968de7ad8fe4410b3bb8f8190b User:Stepan 2 18 277 276 2008-09-15T09:29:58Z WikiSysop 1 /* About Stefan Reinauer */ wikitext text/x-wiki === About Stefan Reinauer === Stefan founded the OpenBIOS project in 1997 and works on firmware related issues ever since. His company [http://www.coresystems.de/ coresystems GmbH] offers a variety of firmware and lowlevel related services. [[Image:StefanReinauer.jpg]] See http://www.coreboot.org/ for more information on coreboot Contact Stefan Reinauer at <stepan at coresystems dot de> Have a look at Stefan's private web page at http://www.stefan-reinauer.de/ c125d7f72c44d1bcbfae03610c86978d1cc36cb5 Mailinglist 0 11 96 95 2008-09-15T09:30:36Z WikiSysop 1 wikitext text/x-wiki The OpenBIOS project currently has one mailing list which is intended for development, informational and general project purposes. You can subscribe to the OpenBIOS mailing list via a web interface or with a simple email (un-)subscription mechanism. For questions and general information about OpenBIOS, subscribe to the OpenBIOS mailing list, at: * http://www.openfirmware.info/mailman/listinfo/openbios A mailing list archive dating back as far as February 1998 can be found at: * http://www.openfirmware.info/pipermail/openbios 784db05b1c9bcfb7a7f7a0ebffb6febae31ce361 Credits 0 13 105 104 2008-09-15T09:31:33Z WikiSysop 1 wikitext text/x-wiki Development contributions Development contributions * Stefan Reinauer (project coordination, main development) * Patrick Mauritz (initial kernel work) * Samuel Rydh (forth interfaces, MOL port, ...) * BlueSwirl (Sparc/Sparc64 port) * Greg Watson (briq port) * [mailto:David@paktor.biz David Paktor] (improving Toke) * Chen-Chau Chu (ppc fixes) * Tim Barrett (detok patches) * Krishna Myneni (permission to include kForth examples with toke) Hardware/Funding * Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development. * [http://www.linuxfund.org/ LinuxFund.org] chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work! * [http://www.newisys.com/ Newisys] funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openfirmware.info and www.coreboot.org. * [http://sase.de/ Daniele Frijia] for donating a Motorola PPC-machine If you or somebody else is missing on this list, send an email to Stefan Reinauer f9b45b0c0ffffe48db5747a23cddadc976b68715 106 105 2009-03-01T20:55:23Z BlueSwirl 14 wikitext text/x-wiki Development contributions * Stefan Reinauer (project coordination, main development) * Patrick Mauritz (initial kernel work) * Samuel Rydh (forth interfaces, MOL port, ...) * BlueSwirl (Sparc/Sparc64 port) * Greg Watson (briq port) * [mailto:David@paktor.biz David Paktor] (improving Toke) * Chen-Chau Chu (ppc fixes) * Tim Barrett (detok patches) * Krishna Myneni (permission to include kForth examples with toke) * Laurent Vivier (ppc/qemu port) Patches and other contributions from * Stefan Assmann * Paul Brook * Mark Cave-Ayland * Justin Chevrier * Peter Creath * Alexander Graf * Mike Hommey * Aurelien Jarno * Igor Kovalenko Hardware/Funding * Michael Gibson (EsEsIx) for donating a CS5530 based thin client for /dev/bios development. * [http://www.linuxfund.org/ LinuxFund.org] chose OpenBIOS to be awarded in the spring 2002 grant cycle with US$1000. Thanks a lot for supporting our work! * [http://www.newisys.com/ Newisys] funded the OpenBIOS project with a very nice piece of hardware, an Opteron based 1U 2CPU Newisys 2100. This machine is nowadays running www.openfirmware.info and www.coreboot.org. * [http://sase.de/ Daniele Frijia] for donating a Motorola PPC-machine If you or somebody else is missing on this list, send an email to Stefan Reinauer f725f2ae186e64645955433d456fa53743d27725 MediaWiki:Sidebar 8 7 75 74 2008-09-15T09:33:50Z WikiSysop 1 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Code of Conduct|Code of Conduct ** Credits|Credits ** Licensing|Licensing * Implementations ** Open Firmware|Open Firmware ** SmartFirmware|Smart Firmware ** OpenBOOT|OpenBOOT ** OpenBIOS|OpenBIOS ** SLOF|SLOF * Development ** FCODE suite|FCODE suite ** BeginAgain|Kernel ** FlashRom|Flashing ** http://tracker.coreboot.org/trac/openbios|Issues/Bugs ** Low Level Firmware * Documentation ** IEEE 1275-1994|Open Firmware ** Bindings|Bindings and Supplements ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 64eebf1396bd841eb97381a4385f69863f8dd3b1 On the Net 0 20 305 304 2008-09-15T09:36:49Z WikiSysop 1 /* Forth */ wikitext text/x-wiki __NOTOC__ == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] * [http://www.coresystems.de coresystems GmbH] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://hermantom.homeip.net/~guest/forth/ Forth engines] - written in several languages. * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://www.coreboot.org/Flashrom coreboot]) == Other Open Source Firmware Implementations == * [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation * [http://cygwin.com/redboot/ redboot] * SLOF * [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware] * SUN OpenBoot * [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * [http://www.qemu.com/ QEMU] * [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization * [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator * [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux * Hypervisor * ... a60f938afeaf63d0a36ab61dfbd96fb811e976d3 306 305 2008-09-15T09:37:39Z WikiSysop 1 /* Forth */ wikitext text/x-wiki __NOTOC__ == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] * [http://www.coresystems.de coresystems GmbH] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://www.coreboot.org/Flashrom coreboot]) == Other Open Source Firmware Implementations == * [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation * [http://cygwin.com/redboot/ redboot] * SLOF * [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware] * SUN OpenBoot * [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * [http://www.qemu.com/ QEMU] * [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization * [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator * [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux * Hypervisor * ... 6877ee16d4c920c19cc9784985cb0c323855cd91 307 306 2010-05-06T15:07:26Z Programmingkid 15 wikitext text/x-wiki __NOTOC__ == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] * [http://www.coresystems.de coresystems GmbH] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * [http://forth.sourceforge.net/standard/dpans/index.html DPANS'94] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://www.coreboot.org/Flashrom coreboot]) == Other Open Source Firmware Implementations == * [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation * [http://cygwin.com/redboot/ redboot] * SLOF * [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware] * SUN OpenBoot * [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * [http://www.qemu.com/ QEMU] * [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization * [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator * [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux * Hypervisor * ... == OpenBIOS tutorial == * [http://www.openfirmware.info/Adding_words_to_openbios How to add words to OpenBIOS] 9f311d7b3b3e84aac85b26b9ea22237d2e60d932 308 307 2010-08-31T11:19:00Z Stepan 2 /* Forth */ wikitext text/x-wiki __NOTOC__ == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] * [http://www.coresystems.de coresystems GmbH] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * DPANS'94 [ [http://forth.sourceforge.net/standard/dpans/index.html HTML] ] | [ [http://openfirmware.info/data/dpans94.pdf PDF] ] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://www.coreboot.org/Flashrom coreboot]) == Other Open Source Firmware Implementations == * [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation * [http://cygwin.com/redboot/ redboot] * SLOF * [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware] * SUN OpenBoot * [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * [http://www.qemu.com/ QEMU] * [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization * [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator * [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux * Hypervisor * ... == OpenBIOS tutorial == * [http://www.openfirmware.info/Adding_words_to_openbios How to add words to OpenBIOS] 6af1d870fce975cdd7e987312e2d2290ad6c275c 309 308 2010-08-31T11:19:41Z Stepan 2 wikitext text/x-wiki __NOTOC__ == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] * [http://www.coresystems.de coresystems GmbH] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * DPANS'94 [ [http://forth.sourceforge.net/standard/dpans/index.html HTML] ] | [ [http://www.openfirmware.info/data/docs/dpans94.pdf PDF] ] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://www.coreboot.org/Flashrom coreboot]) == Other Open Source Firmware Implementations == * [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation * [http://cygwin.com/redboot/ redboot] * SLOF * [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware] * SUN OpenBoot * [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * [http://www.qemu.com/ QEMU] * [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization * [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator * [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux * Hypervisor * ... == OpenBIOS tutorial == * [http://www.openfirmware.info/Adding_words_to_openbios How to add words to OpenBIOS] 75933e0c3ac12d25895405b61f266a6e70a62a88 310 309 2010-09-25T19:58:55Z Programmingkid 15 /* OpenBIOS tutorial */ wikitext text/x-wiki __NOTOC__ == Open Firmware Companies/Vendor support == * [http://www.codegen.com CodeGen] * [http://www.firmworks.com FirmWorks] * [http://www.sun.com SUN] * [http://www.ibm.com IBM] * [http://www.coresystems.de coresystems GmbH] == Open Firmware Documentation == * [http://www.firmworks.com/www/ofw.htm What is Open Firmware?] * [http://playground.sun.com/pub/1275/mejohnson/ Hardware Independant Boot Code] - - An Open Firmware description at an introductory level by Matthew Johnson * [http://www.openfirmware.org/ Open Firmware homepage] * [http://playground.sun.com/pub/1275/ The OpenFirmware IEEE 1275-1994] * [ftp://docs-pdf.sun.com/806-1379-10/806-1379-10.pdf Writing FCode 3.x Programs] * [ftp://docs-pdf.sun.com/806-1377-10/806-1377-10.pdf OpenBoot 3.x Command Reference Manual] * [ftp://docs-pdf.sun.com/806-2908-10/806-2908-10.pdf OpenBoot 3.x Quick Reference] == Forth == * [http://www.faqs.org/faqs/computer-lang/forth-faq/ Forth FAQ] * [http://ccreweb.org/software/kforth/kforth4.html kForth] - programming examples * DPANS'94 [ [http://forth.sourceforge.net/standard/dpans/index.html HTML] ] | [ [http://www.openfirmware.info/data/docs/dpans94.pdf PDF] ] - very interesting: annex D and E. * [http://www.jwdt.com/~paysan/gforth.html Gforth] - Forth implementation of the GNU project * [http://pfe.sourceforge.net/ PFE] - The Portable Forth Environment is based on the ANSI Standard for Forth. It is targeted for embedded environments. * [http://www.geocities.com/simon_baldwin/packages/ vnpforth] - contains a traditional compiler, which turns Forth into standard object (.o) files * [http://zetetics.com/bj/papers/ Moving Forth] - Article on writing Forth Kernels by Brad Rodriguez * [http://www.taygeta.com/forth.html Hayes ANS compliance test] - a test for ANS Forth compliance by John Hayes. The OpenBIOS forth kernel passes this test. * [ftp://ftp.taygeta.com/pub/Forth/Tools/gfob-0.1.0.tar.gz gfob] - a forth source obfuscator * [http://www.ultratechnology.com/forth.htm Thoughtful Programming and Forth] - an essay by Jeff Fox. * [http://www.theforthsource.com/fp000.html Selected Forth Papers] - at theforthsource.com == Stack Machines == * [http://www-2.cs.cmu.edu/~koopman/stack_computers/ Stack Computers: the new wave] - Philip J. Koopman Jr's book on stack computers offered as pdf and html. == Booting == * [ftp://flux.cs.utah.edu/flux/multiboot/MultiBoot.html Multiboot standard] * [http://www.gnu.org/software/grub/ GRUB - GRand Unified Bootloader] * GRUB2 * [http://www.nilo.org/ Nilo] - Network Interface Loader. NILO will boot Linux, FreeBSD, Windows 95/98/NT4 and support the Intel PXE standard. * [http://www.etherboot.org Etherboot] * Redboot == Flashing on Linux Systems == * [http://www.linux-mtd.infradead.org/ MTD] - Memory Technology Device Subsystem for Linux * /dev/bios - Flash ROM driver for Linux (for flashing System and PCI adapter firmware) (obsolete) * [http://www.uniflash.org/ Uniflash] (nonlinux) * flashrom ([http://www.coreboot.org/Flashrom coreboot]) == Other Open Source Firmware Implementations == * [http://www.coreboot.org/ coreboot] - The coreboot project bootstraps systems to the point where they can run an OS kernel or any other application or bootloader from flash. * [http://sourceforge.net/projects/utcboot/ TIARA] - TIARA, an Openbios/GRUB/PFORTH composite, BIOS replacement (dead?) * [http://people.redhat.com/zaitcev/linux/ Proll] - Proll is a firmware replacement for SUN JavaStations to boot Linux * [http://gnufi.blogspot.com/ GNUFI], an open source EFI implementation * [http://cygwin.com/redboot/ redboot] * SLOF * [http://perso.magic.fr/l_indien/OpenHackWare/ Open Hackware] * SUN OpenBoot * [http://www.humboldt.co.uk/gbios.html GBIOS] - GBIOS is a GPLed firmware for PowerPC G3/G4 and some Motorola cpus. (dead?) * ... == Virtual Machines and Emulation == * [http://www.qemu.com/ QEMU] * [http://www.cl.cam.ac.uk/research/srg/netos/xen/ XEN] Virtualization * [http://bochs.sourceforge.net/ Bochs] - portable open source IA-32 (x86) PC emulator * [http://www.dosemu.org/ DOSemu] - DOS Emulation for Linux * Hypervisor * ... == OpenBIOS tutorial == * [http://www.openfirmware.info/Adding_words_to_openbios How to add words to OpenBIOS] * [http://www.openfirmware.info/How_Local_Variables_in_Forth_Work_---_Using_Apple’s_Open_Firmware_Implementation How to use local variables] 183ff41cc7a41aec151f2289caad2463863b0167 OFW as a Coreboot Payload 0 40 394 2008-12-28T05:08:02Z Wmb 5 Moved Coreboot+OFW instructions to a separate page wikitext text/x-wiki This page tells how to build Open Firmware as a Coreboot payload and run it under QEMU. You can also run Open Firmware under QEMU without Coreboot: * You can build a QEMU ROM image directly from code in the OFW tree - see [[Building OFW for QEMU]]. * You can boot OFW from a conventional BIOS - see [[Building OFW to Run Under BIOS]] === Software Requirements === * qemu-0.9.1 * Open Firmware rev. >= 1051 * coreboot >= v2 * GCC and GNU make - OFW builds with most versions; I'm not sure which versions Coreboot needs === Building Open Firmware === You need . Most versions will work. Download the Open Firmware source: svn co svn://openfirmware.info/openfirmware Configure OFW for Coreboot: cd openfirmware/cpu/x86/pc/biosload cp config-coreboot.fth config.fth Build OFW: cd build make After make is finished (it shouldn't take long) there should be a file "ofwlb.elf" in the same directory. Copy this to your coreboot-v[x] directory. === Building coreboot === Follow the instructions in the coreboot documentation, using ofwlb.elf as your payload file. === Getting QEMU === Get QEMU >= 0.9.1 from http://bellard.org/qemu/download.html Version 0.9.1 should "just work". It supports reasonably large ROM images, determining the emulated ROM size from the size of the image file. There was a "qemu_biossize.patch" for qemu-0.9.0, but the site that hosted that patch is defunct. === Run Your ROM Image === qemu -L coreboot-v3/build -hda path/to/disk.img -serial `tty` -nographic === Ideas for Improvement === These instructions build a rather plain OFW configuration that lacks drivers for several of QEMU's specific I/O devices (Ethernet, video, sound). Suitable drivers are in the OFW tree, and are included in the QEMU build described in [[Building OFW for QEMU]]. It would be nice to add those drivers to the configuration described herein. If the Cirrus video driver were added, qemu could be used in graphic mode. __NOEDITSECTION__ 70d1da7726dab6dba42c83bc85ef0392a7ef0f1f 395 394 2008-12-28T05:09:22Z Wmb 5 Fixed a typo wikitext text/x-wiki This page tells how to build Open Firmware as a Coreboot payload and run it under QEMU. You can also run Open Firmware under QEMU without Coreboot: * You can build a QEMU ROM image directly from code in the OFW tree - see [[Building OFW for QEMU]]. * You can boot OFW from a conventional BIOS - see [[Building OFW to Run Under BIOS]] === Software Requirements === * qemu-0.9.1 * Open Firmware rev. >= 1051 * coreboot >= v2 * GCC and GNU make - OFW builds with most versions; I'm not sure which versions Coreboot needs === Building Open Firmware === Download the Open Firmware source: svn co svn://openfirmware.info/openfirmware Configure OFW for Coreboot: cd openfirmware/cpu/x86/pc/biosload cp config-coreboot.fth config.fth Build OFW: cd build make After make is finished (it shouldn't take long) there should be a file "ofwlb.elf" in the same directory. Copy this to your coreboot-v[x] directory. === Building coreboot === Follow the instructions in the coreboot documentation, using ofwlb.elf as your payload file. === Getting QEMU === Get QEMU >= 0.9.1 from http://bellard.org/qemu/download.html Version 0.9.1 should "just work". It supports reasonably large ROM images, determining the emulated ROM size from the size of the image file. There was a "qemu_biossize.patch" for qemu-0.9.0, but the site that hosted that patch is defunct. === Run Your ROM Image === qemu -L coreboot-v3/build -hda path/to/disk.img -serial `tty` -nographic === Ideas for Improvement === These instructions build a rather plain OFW configuration that lacks drivers for several of QEMU's specific I/O devices (Ethernet, video, sound). Suitable drivers are in the OFW tree, and are included in the QEMU build described in [[Building OFW for QEMU]]. It would be nice to add those drivers to the configuration described herein. If the Cirrus video driver were added, qemu could be used in graphic mode. __NOEDITSECTION__ c114ca869fc816fb3095477525ec304c69df128c 396 395 2011-03-18T22:04:59Z Wmb 5 Page rename wikitext text/x-wiki This page tells how to build Open Firmware as a Coreboot payload and run it under QEMU. You can also run Open Firmware under QEMU without Coreboot: * You can build a QEMU ROM image directly from code in the OFW tree - see [[Building OFW for QEMU]]. * You can boot OFW from a conventional BIOS - see [[Building OFW to Load from BIOS]] === Software Requirements === * qemu-0.9.1 * Open Firmware rev. >= 1051 * coreboot >= v2 * GCC and GNU make - OFW builds with most versions; I'm not sure which versions Coreboot needs === Building Open Firmware === Download the Open Firmware source: svn co svn://openfirmware.info/openfirmware Configure OFW for Coreboot: cd openfirmware/cpu/x86/pc/biosload cp config-coreboot.fth config.fth Build OFW: cd build make After make is finished (it shouldn't take long) there should be a file "ofwlb.elf" in the same directory. Copy this to your coreboot-v[x] directory. === Building coreboot === Follow the instructions in the coreboot documentation, using ofwlb.elf as your payload file. === Getting QEMU === Get QEMU >= 0.9.1 from http://bellard.org/qemu/download.html Version 0.9.1 should "just work". It supports reasonably large ROM images, determining the emulated ROM size from the size of the image file. There was a "qemu_biossize.patch" for qemu-0.9.0, but the site that hosted that patch is defunct. === Run Your ROM Image === qemu -L coreboot-v3/build -hda path/to/disk.img -serial `tty` -nographic === Ideas for Improvement === These instructions build a rather plain OFW configuration that lacks drivers for several of QEMU's specific I/O devices (Ethernet, video, sound). Suitable drivers are in the OFW tree, and are included in the QEMU build described in [[Building OFW for QEMU]]. It would be nice to add those drivers to the configuration described herein. If the Cirrus video driver were added, qemu could be used in graphic mode. __NOEDITSECTION__ 60d8be5c02baa4911e0f90673c1900868177d094 Open Firmware 0 33 379 378 2008-12-28T08:11:08Z Wmb 5 Updated with new information and links to version-specific build instructions wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation (OFW) under a BSD license. This code shares some code with SUN's OpenBOOT implementation. The open source OFW supports x86, PowerPC, and ARM architectures. Other architectures, including SPARC and MIPS, may be added as time and interest dictate. The x86 version is used on the OLPC "XO" computer. The x86 version can be configured for numerous other environments, including * Direct QEMU ROM (replacing the "bios.bin" that is supplied with QEMU * Coreboot payload * Loadable on directly on top of a conventional PC BIOS (booted from floppy or hard disk like an OS). In this configuration it can run on an arbitrary PC, or on an emulator like QEMU, VirtualBox, or VMWare. OFW can boot Linux directly from a disk file (FAT, ext2, ISO9660, or jffs2 filesystems) without the need for an intermediate bootloader like LILO or GRUB. The Linux image can be in either ELF format (as created by the first phase of the Linux kernel compilation process) or in the "bzImage" format that "wraps" the ELF image. When booting an ELF image, OFW can read the ELF symbol table so OFW's assembly language debugger can resolve kernel symbols. OFW can also boot other ELF standalone images, providing to them rudimentary "libc" capability. That facility has been used for booting, for example, Minix, ReactOS, Plan9, Inferno and SqueakNOS. The OLPC system ROM includes several such "standalone client programs", including MicroEMACS, memtest86, and NANDblaster (a facility for fast OS updates over multicast wireless). On the OLPC system, OFW emulates enough legacy BIOS "real mode INTs" to boot Windows XP. On another system, OFW supports booting Windows CE. == Download == You can [http://tracker.coreboot.org/trac/openfirmware/browser browse the source code online]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openfirmware.info/openfirmware/ if you want a specific revision: $ svn co svn://openfirmware.info/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openfirmware.info/openfirmware-svn/ openfirmware</nowiki> ==Building Different Versions== * Direct QEMU ROM: see [[Building OFW for QEMU]] * Coreboot: see [[OFW as a Coreboot Payload]] * OLPC: see [[Building OFW for OLPC]] * BIOS-loaded: see [[Building OFW to Run Under BIOS]] == Mailing List == There's an Open Firmware mailing list at: * http://www.openfirmware.info/mailman/listinfo/openfirmware. The mailing list archive is also available: * http://www.openfirmware.info/pipermail/openfirmware/ 525d712ccfd27242fab7cb4c88c1e52532ea0185 380 379 2010-08-10T18:11:46Z Wmb 5 /* Added ARM building link */ wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation (OFW) under a BSD license. This code shares some code with SUN's OpenBOOT implementation. The open source OFW supports x86, PowerPC, and ARM architectures. Other architectures, including SPARC and MIPS, may be added as time and interest dictate. The x86 version is used on the OLPC "XO" computer. The x86 version can be configured for numerous other environments, including * Direct QEMU ROM (replacing the "bios.bin" that is supplied with QEMU * Coreboot payload * Loadable on directly on top of a conventional PC BIOS (booted from floppy or hard disk like an OS). In this configuration it can run on an arbitrary PC, or on an emulator like QEMU, VirtualBox, or VMWare. OFW can boot Linux directly from a disk file (FAT, ext2, ISO9660, or jffs2 filesystems) without the need for an intermediate bootloader like LILO or GRUB. The Linux image can be in either ELF format (as created by the first phase of the Linux kernel compilation process) or in the "bzImage" format that "wraps" the ELF image. When booting an ELF image, OFW can read the ELF symbol table so OFW's assembly language debugger can resolve kernel symbols. OFW can also boot other ELF standalone images, providing to them rudimentary "libc" capability. That facility has been used for booting, for example, Minix, ReactOS, Plan9, Inferno and SqueakNOS. The OLPC system ROM includes several such "standalone client programs", including MicroEMACS, memtest86, and NANDblaster (a facility for fast OS updates over multicast wireless). On the OLPC system, OFW emulates enough legacy BIOS "real mode INTs" to boot Windows XP. On another system, OFW supports booting Windows CE. == Download == You can [http://tracker.coreboot.org/trac/openfirmware/browser browse the source code online]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openfirmware.info/openfirmware/ if you want a specific revision: $ svn co svn://openfirmware.info/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openfirmware.info/openfirmware-svn/ openfirmware</nowiki> ==Building Different Versions== * Direct QEMU ROM: see [[Building OFW for QEMU]] * Coreboot: see [[OFW as a Coreboot Payload]] * OLPC: see [[Building OFW for OLPC]] * BIOS-loaded: see [[Building OFW to Run Under BIOS]] * ARM: see [[Building OFW for ARM]] == Mailing List == There's an Open Firmware mailing list at: * http://www.openfirmware.info/mailman/listinfo/openfirmware. The mailing list archive is also available: * http://www.openfirmware.info/pipermail/openfirmware/ 6d3755b839c4b28d5b24a4ac9a46c6e9a67f33ca 381 380 2011-03-18T22:02:14Z Wmb 5 /* Page rename */ wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation (OFW) under a BSD license. This code shares some code with SUN's OpenBOOT implementation. The open source OFW supports x86, PowerPC, and ARM architectures. Other architectures, including SPARC and MIPS, may be added as time and interest dictate. The x86 version is used on the OLPC "XO" computer. The x86 version can be configured for numerous other environments, including * Direct QEMU ROM (replacing the "bios.bin" that is supplied with QEMU * Coreboot payload * Loadable on directly on top of a conventional PC BIOS (booted from floppy or hard disk like an OS). In this configuration it can run on an arbitrary PC, or on an emulator like QEMU, VirtualBox, or VMWare. OFW can boot Linux directly from a disk file (FAT, ext2, ISO9660, or jffs2 filesystems) without the need for an intermediate bootloader like LILO or GRUB. The Linux image can be in either ELF format (as created by the first phase of the Linux kernel compilation process) or in the "bzImage" format that "wraps" the ELF image. When booting an ELF image, OFW can read the ELF symbol table so OFW's assembly language debugger can resolve kernel symbols. OFW can also boot other ELF standalone images, providing to them rudimentary "libc" capability. That facility has been used for booting, for example, Minix, ReactOS, Plan9, Inferno and SqueakNOS. The OLPC system ROM includes several such "standalone client programs", including MicroEMACS, memtest86, and NANDblaster (a facility for fast OS updates over multicast wireless). On the OLPC system, OFW emulates enough legacy BIOS "real mode INTs" to boot Windows XP. On another system, OFW supports booting Windows CE. == Download == You can [http://tracker.coreboot.org/trac/openfirmware/browser browse the source code online]. The repository is available through Subversion: You can check it out as follows: $ svn co svn://openfirmware.info/openfirmware/ if you want a specific revision: $ svn co svn://openfirmware.info/openfirmware -r 35 If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openfirmware.info/openfirmware-svn/ openfirmware</nowiki> ==Building Different Versions== * Direct QEMU ROM: see [[Building OFW for QEMU]] * Coreboot: see [[OFW as a Coreboot Payload]] * OLPC: see [[Building OFW for OLPC]] * BIOS-loaded: see [[Building OFW to Load from BIOS]] * ARM: see [[Building OFW for ARM]] == Mailing List == There's an Open Firmware mailing list at: * http://www.openfirmware.info/mailman/listinfo/openfirmware. The mailing list archive is also available: * http://www.openfirmware.info/pipermail/openfirmware/ faddbbbd85de89a455eff3e3ae694e65e130a8d1 Building OFW for QEMU 0 41 397 2008-12-28T10:16:13Z Wmb 5 Detailed instructions for using OFW with QEMU. wikitext text/x-wiki This page tells how to build the x86 version of Open Firmware to run under the QEMU emulator. In this version, OFW replaces QEMU's normal "bios.bin" file, so QEMU boots directly into OFW, without a conventional BIOS. This version supports most of QEMU's I/O capabilities, illustrating some of the things that OFW can do. See the [[#QEMU Options / Things to Try]] section. The OFW tree contains a version of the platform-specific "early startup" code that is suitable for initializing QEMU's virtual hardware. The early-startup code for QEMU is as simple as such code can possibly be, because the QEMU core system "hardware" requires no initialization. On real hardware, you must turn on PLLs, configure bus bridges and superIO chips, detect DRAM characteristics and configure memory controllers, and do other complex chipset-dependent things in the early stages of startup. QEMU omits all that "magic" stuff that is outside of generic x86 programming models, so the only system-specific early startup code for QEMU is a simple memory sizing loop. In addition to this "direct" version, there are two other ways to run OFW under QEMU: * You can build OFW as "payload" for Coreboot, so Core boot does the early-startup stuff - see [[OFW as a Coreboot Payload]]. * You can boot OFW from a conventional BIOS - see [[Building OFW to Run Under BIOS]] === Software Requirements === * qemu-0.9.1 * Open Firmware rev. >= 1051 * GCC and GNU make - OFW builds with most versions === Getting QEMU === Get QEMU >= 0.9.1 from http://bellard.org/qemu/download.html === Building Open Firmware === Get the Open Firmware source: svn co svn://openfirmware.info/openfirmware Build OFW: cd openfirmware/cpu/x86/pc/emu/build make After make is finished (it shouldn't take long) there should be a file "emuofw.rom" in the build directory. Copy this to your qemu directory. === Run Your ROM Image === qemu -L . -bios emuofw.rom -hda fat:. That is the basic invocation; you should get a console window with OFW running in it. OFW is using the emulated Cirrus graphics display in linear framebuffer mode, not in VGA mode. === QEMU Options / Things to Try === QEMU has lots of options that let you do all sorts of fun things. The following sections illustrate a few of OFW's I/O capabilities. ==== Memory Size ==== If you look in OFW's startup banner, you should see "128 MiB memory installed". That is QEMU's default memory size. You can change that by adding "-m NNN" to the qemu command line, for example: qemu -L . -bios emuofw.rom -hda fat:. -m 32 OFW as configured will work with power-of-two size between 32 and 2048 MiB (although my QEMU installation only works up to 1024 MB). Those limits aren't inherent inheret OFW, but rather artifacts of the way this particular "port" is configured. ==== Hard Disk Images ==== The command line argument "-hda fat:." as shown above makes the current directory on the host system appear to OFW as an IDE hard disk with a read-only FAT filesystem. You can inspect it with: ok .partitions c ok dir c:\ The device name "c" is a devalias. You can see the actual device name with: ok devalias c ok devalias Instead of that "virtual FAT filesystem", you can make use Linux tools to make a filesystem image. In this example, we'll create a 10 MByte image with a single partition and an ext2 filesystem: $ dd if=/dev/zero of=filesystem.img bs=1M count=10 $ /sbin/mke2fs -F filesystem.img $ dd if=filesystem.img of=fs.img bs=512 seek=1 $ rm filesystem.img $ /sbin/sfdisk -L -uS -C 10 -H 64 -S 32 fs.img <<EOF ,,L,* ; ; ; EOF $ mkdir mnt $ sudo mount -o loop,offset=512 fs.img mnt $ # Now copy some files to "mnt" $ sudo umount mnt $ qemu -L . -bios emuofw.rom -hda fs.img In the QEMU OFW console window: ok dir c:\ In the recipe above, the total size (10 MiB) appears on the first "dd" line (count=10) and on the "sfdisk" line (-C 10). The sfdisk values for heads (-H 64) and sectors (-S 32) are set so that the cylinder size is 1MiB (64*32*512), making it easy to set the overall size with the cylinders (-C) argument. It is more common to use the maximum values -H 255 -S 63 in order to maximize the possible overall size, but that results in a cylinder size of just under 8M, which isn't quite as easy to work with for this example. The recipe uses two "dd" lines instead of making the image file in one step because the "mke2fs" command doesn't give you the option of skipping the first sector where the partition map has to be located. ==== Serial Console ==== You can tell QEMU to emulate a serial port by adding "-serial NAME" to the command line, as with: $ qemu -L . -bios emuofw.rom -hda fat:. -serial `tty` Then you can tell OFW to use the serial console with: ok com1 io QEMU has lots of options for directing the emulated serial port to various places, including real serial ports on the host system and network connections to other machines. Read the [http://bellard.org/qemu/qemu-doc.html QEMU documentation] (-serial option) for more information. You can configure OFW to use the serial port by default, instead of the graphics screen and emulated PC keyboard. To do so, uncomment the line "create serial-console" in openfirmware/cpu/x86/emu/config.fth and re-execute the "make" command. Serial consoles are convenient because it's usually easy to cut-and-paste Forth code into the window that is acting as the "terminal emulator" for the serial console; you can't paste into QEMU's graphical console. ==== Networking ==== OFW has an extensive network stack, supporting many protocols including TFTP, NFS, HTTP (client and server), and Telnet (client and server). Here's an example qemu command line with networking support enabled: $ qemu -L . -bios emuofw.rom -hda fat:. -net nic,model=pcnet -net tap Consult the [http://bellard.org/qemu/qemu-doc.html QEMU documentation] (the "-net" option) to learn how to configure the "tap" interface to connect through to the real network. Here are some OFW networking commands that you might want to try: ok watch-net ok debug-net ok ping yahoo.com ok undebug-net ok ping firmworks.com ok more http:\\firmworks.com\hello.fth ok fload http:\\firmworks.com\hello.fth ok telnetd telnet://10.20.0.107 Now start a telnet client on some machine, connecting to the IP address shown. Quitting the telnet client restores the OFW prompt to the QEMU console. ok telnet 10.20.0.5 Instead of "10.20.0.5", use the hostname or IP address of a telnet server. To exit, type Ctrl-] . ok httpd http://10.20.0.107 Browse to the URL shown. Type any key on the QEMU console to exit the HTTP server. In addition to static pages, the HTTP server can do server-side scripting with Forth, and of course you do client-side scripting by serving up Javascript or Java pages. This facility has been used for an interactive embedded system with a Web interface programmed entirely in Open Firmware - a multi-headed high-speed camera for real-time analysis of golf clubs and golf swings. OFW also supports IPV6 networking, but it's not compiled into this version. You can, of course, boot operating systems over the network, using TFTP, NFS, or HTTP. ==== Graphics ==== OFW uses the display in linear framebuffer mode, so it can display 2D graphics. To see a simple demo: ok fload http:\\firmworks.com\testrect.fth To clear the screen afterwards: ok page OFW has a graphical menu system that is not enabled in this configuration. You can navigate it with either the mouse or the keyboard. OFW can display .BMP files. ==== USB ==== To make QEMU emulate a USB mass storage device, do this: $ qemu -L . -bios emuofw.rom -hda fat:. -usbdevice disk:fat:. Then, in OFW: ok probe-usb ok dir u:\ "p2" is an alias for "probe-usb" for us lazy people. Since OFW tries not to do stuff "behind your back", if you plug in a new USB device, you must tell OFW to rescan the USB bus. In this case, it will have already scanned the device (it does that automatically at startup), but rescanning is a convenient way to get OFW to show you what is there. You could instead say: ok show-devs usb but "p2" is easier to type. In the qemu command, you could attach a writable disk image with, for example: $ qemu -L . -bios emuofw.rom -hda fat:. -usbdevice disk:fs.img assuming that you have created a suitable fs.img file as per the instructions above. You can't use the same writable image for both -hda and -usbdevice, but it's okay to use the same read-only image (as with the fat:<directory> syntax) for both. OFW has reasonably good support for a wide selection of USB mass storage devices - flash keys, disks, CDROMs, multi-card readers, etc. OFW also supports USB keyboards, but I haven't yet figured out how to make that work under QEMU. OFW supports some USB 2.0 network interfaces and some USB-to-serial adapters. You might be able to make those work using QEMU's ability to connect to real USB devices on the host. On real hardware, OFW supports UHCI (USB 1.1), OHCI (USB 1.1), and EHCI (USB 2.0) host controllers. ==== Sound ==== To enable sound support in QEMU, do this: $ qemu -L . -bios emuofw.rom -hda fat:. -soundhw sb In OFW: ok select /sound ok d# 200 d# 2000 tone ok unselect That plays a 200 Hz sine wave for 2 seconds (2000 mS). OFW can also play .wav files, but that's not included in this configuration. QEMU has a lot of options to control the sound emulation; read the documentation to get totally confused. OFW's SoundBlaster driver, as included in this configuration, is rather rudimentary. OFW has better drivers for the more common AC97 sound hardware. __NOEDITSECTION__ 0babc837eba71ba0eefdce47c1da1e7d534ca528 Building OFW for OLPC 0 42 399 2008-12-28T10:52:45Z Wmb 5 OLPC OFW build instructions wikitext text/x-wiki This page tells how to build the OLPC (One Laptop Per Child) version of Open Firmware. This is the version of OFW that is normally shipped on that machine. You can get precompiled ROMs from http://dev.laptop.org/pub/firmware , so you only need to recompile from source if you want to change something. See http://wiki.laptop.org/go/Firmware for version history. === Software Requirements === * Open Firmware source code * GCC and GNU make - most versions are okay for building OFW * IASL (Intel ASL compiler, for compiling ACPI tables) - most Linux distributions have an "iasl" package. === Building Open Firmware === Get the Open Firmware source: svn co svn://openfirmware.info/openfirmware Build OFW: cd openfirmware/cpu/x86/pc/olpc/build make The last line of the compilation output should say something like: --- Saving as q2e24.rom That tells you the name of the output file. You can install it in your OLPC XO computer by copying that file to a USB FLASH key, inserting the key into the XO, and typing on the XO: ok flash u:\q2e24.rom 2e03863af76ec4bd75d9340d6d33bbe39be4eb64 Building OFW to Load from BIOS 0 43 400 2008-12-28T11:35:29Z Wmb 5 Instructions for building OFW to boot under a conventional BIOS wikitext text/x-wiki This page tells how to build the x86 version of Open Firmware to boot under a conventional BIOS. These instructions specifically describe a configuration that is good for running on the QEMU and VirtualBox emulators, but very similar instructions can be used to make a version that runs on any PC. In this version, OFW is stored on a floppy disk image. The conventional BIOS boots it as if it were an operating system like DOS or Windows. OFW then "takes over" the machine, ignoring the conventional BIOS that booted it. That BIOS has already done the work of early-startup machine initialization - turning on the memory controller and configuring chipset-dependent registers. In addition to this BIOS-loaded version, there are two other ways to run OFW under QEMU: * * You can build an OFW image that replaces the QEMU BIOS ROM image, entirely from code in the OFW tree - see [[Building OFW for QEMU]]. * You can build an OFW image that replaces the QEMU BIOS ROM image, using OFW as a "payload" for Coreboot, so Coreboot does the early-startup stuff - see [[OFW as a Coreboot Payload]]. === Software Requirements === * qemu-0.9.1 or VirtualBox * Open Firmware rev. >= 1051 * GCC and GNU make - most versions work for builing OFW === Building Open Firmware === Get the Open Firmware source: svn co svn://openfirmware.info/openfirmware === Build OFW === $ cd cpu/x86/pc/biosload/ $ cp config-virtualbox.fth config.fth $ cd build $ make floppyofw.img The "config-virtualbox.fth" configuration is known to work with QEMU. Other configurations may work also - but the "qemu-loaded" config option isn't what you want for this technique, because it's a subcase of the CoreBoot-payload configuration. You will use the "floppyofw.img" output file in a later step. === Make a bootable Floppy Image === $ ../../../Linux/forth fw.dic ../makefloppy.fth This creates a file that is a bootable floppy image with an empty FAT12 filesystem. This step only has to be done once. === Copy OFW onto the Floppy Image === $ mkdir flp $ sudo mount -t msdos -o loop floppy.img flp $ sudo cp floppyofw.img flp/ofw.img $ sudo umount flp Copy floppy.img to the QEMU or VirtualBox directory. === Boot OFW from QEMU === $ qemu -L <dir> -boot a -fda floppy.img "<dir>" is the directory that contains QEMU's BIOS and VGA BIOS files. === Boot OFW from VirtualBox === The following VirtualBox configuration settings work for me: OS Type = Other/Unknown Base Memory = 64 MB Video Memory = 8 MB Boot Order = Floppy, Hard Disk ACPI = Disabled IO APIC = Disabled VT-x/AMD-V = Disabled PAE/NX = Disabled Floppy Image = floppy.img Network Adapter 1 = PCnet-PCI II (host interface, <tap name>) (other settings are mostly irrelevant) === Recompiling === If you want to make changes and recompile OFW, you need not repeat the "makefloppy" step; you can just loopback mount the floppy image and copy the new OFW version to ofw.img . == What is on the Floppy Image == The floppy image is a bootable floppy with a FAT12 filesystem. Its first two sectors contain a simple bootloader program that uses BIOS INT 13 callbacks to read floppy sectors. The program scans the FAT root directory entries to find the file "ofw.img", then loads that into memory and jumps to it. When you build floppyofw.img, as a side effect it also builds bootsec.img, which is that simple bootloader. The source code (Forth-style assembly language) is in biosload/bootsec.fth . The "makefloppy.fth" program that creates the image is pretty simple; it copies bootsec.img to the output file "floppy.img", creates a couple of initially empty FAT tables, zeros the root directory area, and fills the data area with zeros. == Making a Prototype Floppy Image with Linux Commands == Here's a pair of Linux commands that accomplish the same thing as makefloppy.fth: Step6a $ /sbin/mkdosfs -C -f 2 -F 12 -R 2 -r 224 -s 1 -S 512 floppy.img 1440 Step6b $ dd <bootsec.img of=floppy.img conv=nocreat,notrunc The arguments to mkdosfs force the filesystem layout to match the layout that is specified in the BIOS parameter block in bootsec.img. The advantage of makefloppy.fth is that it reads the filesystem layout parameters from the BPB in bootsec.img, so its guaranteed to be consistent. If bootsec.fth were edited to change the layout, the arguments to "mkdosfs" would have to change. (But there's little need to change that layout, since it's a standard floppy size.) The advantage of the Linux command sequence is that it creates a file with "holes", thus saving disk space for awhile (until something fills in the holes). === Booting on a Real PC from a USB Key === To build for a real PC: $ cd openfirmware/cpu/x86/biosload $ cp config-usbkey.fth config.fth $ cd build $ make That will create a file named "ofw.c32" that can be booted from a USB key that has "syslinux" installed on it. http://www.911cd.net/forums//index.php?showtopic=21902 has some tips on how to install syslinux. Your syslinux.cfg file needs a line that says: kernel ofw.c32 (There is also some support in the source code / config.fth for building a version to boot via Grub, but I haven't tested that for some time, so it might be broken.) 199621a67f7486caa399bc6caf4994dad42c9a91 401 400 2008-12-28T11:38:18Z Wmb 5 formatting wikitext text/x-wiki This page tells how to build the x86 version of Open Firmware to boot under a conventional BIOS. These instructions specifically describe a configuration that is good for running on the QEMU and VirtualBox emulators, but very similar instructions can be used to make a version that runs on any PC. In this version, OFW is stored on a floppy disk image. The conventional BIOS boots it as if it were an operating system like DOS or Windows. OFW then "takes over" the machine, ignoring the conventional BIOS that booted it. That BIOS has already done the work of early-startup machine initialization - turning on the memory controller and configuring chipset-dependent registers. In addition to this BIOS-loaded version, there are two other ways to run OFW under QEMU: * * You can build an OFW image that replaces the QEMU BIOS ROM image, entirely from code in the OFW tree - see [[Building OFW for QEMU]]. * You can build an OFW image that replaces the QEMU BIOS ROM image, using OFW as a "payload" for Coreboot, so Coreboot does the early-startup stuff - see [[OFW as a Coreboot Payload]]. === Software Requirements === * qemu-0.9.1 or VirtualBox * Open Firmware rev. >= 1051 * GCC and GNU make - most versions work for builing OFW === Getting Open Firmware Source === $ svn co svn://openfirmware.info/openfirmware === Building OFW === $ cd cpu/x86/pc/biosload/ $ cp config-virtualbox.fth config.fth $ cd build $ make floppyofw.img The "config-virtualbox.fth" configuration is known to work with QEMU. Other configurations may work also - but the "qemu-loaded" config option isn't what you want for this technique, because it's a subcase of the CoreBoot-payload configuration. You will use the "floppyofw.img" output file in a later step. === Making a bootable Floppy Image === $ ../../../Linux/forth fw.dic ../makefloppy.fth This creates a file that is a bootable floppy image with an empty FAT12 filesystem. This step only has to be done once. === Copying OFW onto the Floppy Image === $ mkdir flp $ sudo mount -t msdos -o loop floppy.img flp $ sudo cp floppyofw.img flp/ofw.img $ sudo umount flp Copy floppy.img to the QEMU or VirtualBox directory. === Booting OFW from QEMU === $ qemu -L <dir> -boot a -fda floppy.img "<dir>" is the directory that contains QEMU's BIOS and VGA BIOS files. === Booting OFW from VirtualBox === The following VirtualBox configuration settings work for me: OS Type = Other/Unknown Base Memory = 64 MB Video Memory = 8 MB Boot Order = Floppy, Hard Disk ACPI = Disabled IO APIC = Disabled VT-x/AMD-V = Disabled PAE/NX = Disabled Floppy Image = floppy.img Network Adapter 1 = PCnet-PCI II (host interface, <tap name>) (other settings are mostly irrelevant) === Recompiling === If you want to make changes and recompile OFW, you need not repeat the "makefloppy" step; you can just loopback mount the floppy image and copy the new OFW version to ofw.img . === What is on the Floppy Image === The floppy image is a bootable floppy with a FAT12 filesystem. Its first two sectors contain a simple bootloader program that uses BIOS INT 13 callbacks to read floppy sectors. The program scans the FAT root directory entries to find the file "ofw.img", then loads that into memory and jumps to it. When you build floppyofw.img, as a side effect it also builds bootsec.img, which is that simple bootloader. The source code (Forth-style assembly language) is in biosload/bootsec.fth . The "makefloppy.fth" program that creates the image is pretty simple; it copies bootsec.img to the output file "floppy.img", creates a couple of initially empty FAT tables, zeros the root directory area, and fills the data area with zeros. === Making a Prototype Floppy Image with Linux Commands === Here's a pair of Linux commands that accomplish the same thing as makefloppy.fth: Step6a $ /sbin/mkdosfs -C -f 2 -F 12 -R 2 -r 224 -s 1 -S 512 floppy.img 1440 Step6b $ dd <bootsec.img of=floppy.img conv=nocreat,notrunc The arguments to mkdosfs force the filesystem layout to match the layout that is specified in the BIOS parameter block in bootsec.img. The advantage of makefloppy.fth is that it reads the filesystem layout parameters from the BPB in bootsec.img, so its guaranteed to be consistent. If bootsec.fth were edited to change the layout, the arguments to "mkdosfs" would have to change. (But there's little need to change that layout, since it's a standard floppy size.) The advantage of the Linux command sequence is that it creates a file with "holes", thus saving disk space for awhile (until something fills in the holes). === Booting on a Real PC from a USB Key === To build for a real PC: $ cd openfirmware/cpu/x86/biosload $ cp config-usbkey.fth config.fth $ cd build $ make That will create a file named "ofw.c32" that can be booted from a USB key that has "syslinux" installed on it. http://www.911cd.net/forums//index.php?showtopic=21902 has some tips on how to install syslinux. Your syslinux.cfg file needs a line that says: kernel ofw.c32 (There is also some support in the source code / config.fth for building a version to boot via Grub, but I haven't tested that for some time, so it might be broken.) efcb2a388c5e4e4c10a4c497364dc9379dc4d9bc 402 401 2008-12-28T11:38:49Z Wmb 5 typo wikitext text/x-wiki This page tells how to build the x86 version of Open Firmware to boot under a conventional BIOS. These instructions specifically describe a configuration that is good for running on the QEMU and VirtualBox emulators, but very similar instructions can be used to make a version that runs on any PC. In this version, OFW is stored on a floppy disk image. The conventional BIOS boots it as if it were an operating system like DOS or Windows. OFW then "takes over" the machine, ignoring the conventional BIOS that booted it. That BIOS has already done the work of early-startup machine initialization - turning on the memory controller and configuring chipset-dependent registers. In addition to this BIOS-loaded version, there are two other ways to run OFW under QEMU: * You can build an OFW image that replaces the QEMU BIOS ROM image, entirely from code in the OFW tree - see [[Building OFW for QEMU]]. * You can build an OFW image that replaces the QEMU BIOS ROM image, using OFW as a "payload" for Coreboot, so Coreboot does the early-startup stuff - see [[OFW as a Coreboot Payload]]. === Software Requirements === * qemu-0.9.1 or VirtualBox * Open Firmware rev. >= 1051 * GCC and GNU make - most versions work for builing OFW === Getting Open Firmware Source === $ svn co svn://openfirmware.info/openfirmware === Building OFW === $ cd cpu/x86/pc/biosload/ $ cp config-virtualbox.fth config.fth $ cd build $ make floppyofw.img The "config-virtualbox.fth" configuration is known to work with QEMU. Other configurations may work also - but the "qemu-loaded" config option isn't what you want for this technique, because it's a subcase of the CoreBoot-payload configuration. You will use the "floppyofw.img" output file in a later step. === Making a bootable Floppy Image === $ ../../../Linux/forth fw.dic ../makefloppy.fth This creates a file that is a bootable floppy image with an empty FAT12 filesystem. This step only has to be done once. === Copying OFW onto the Floppy Image === $ mkdir flp $ sudo mount -t msdos -o loop floppy.img flp $ sudo cp floppyofw.img flp/ofw.img $ sudo umount flp Copy floppy.img to the QEMU or VirtualBox directory. === Booting OFW from QEMU === $ qemu -L <dir> -boot a -fda floppy.img "<dir>" is the directory that contains QEMU's BIOS and VGA BIOS files. === Booting OFW from VirtualBox === The following VirtualBox configuration settings work for me: OS Type = Other/Unknown Base Memory = 64 MB Video Memory = 8 MB Boot Order = Floppy, Hard Disk ACPI = Disabled IO APIC = Disabled VT-x/AMD-V = Disabled PAE/NX = Disabled Floppy Image = floppy.img Network Adapter 1 = PCnet-PCI II (host interface, <tap name>) (other settings are mostly irrelevant) === Recompiling === If you want to make changes and recompile OFW, you need not repeat the "makefloppy" step; you can just loopback mount the floppy image and copy the new OFW version to ofw.img . === What is on the Floppy Image === The floppy image is a bootable floppy with a FAT12 filesystem. Its first two sectors contain a simple bootloader program that uses BIOS INT 13 callbacks to read floppy sectors. The program scans the FAT root directory entries to find the file "ofw.img", then loads that into memory and jumps to it. When you build floppyofw.img, as a side effect it also builds bootsec.img, which is that simple bootloader. The source code (Forth-style assembly language) is in biosload/bootsec.fth . The "makefloppy.fth" program that creates the image is pretty simple; it copies bootsec.img to the output file "floppy.img", creates a couple of initially empty FAT tables, zeros the root directory area, and fills the data area with zeros. === Making a Prototype Floppy Image with Linux Commands === Here's a pair of Linux commands that accomplish the same thing as makefloppy.fth: Step6a $ /sbin/mkdosfs -C -f 2 -F 12 -R 2 -r 224 -s 1 -S 512 floppy.img 1440 Step6b $ dd <bootsec.img of=floppy.img conv=nocreat,notrunc The arguments to mkdosfs force the filesystem layout to match the layout that is specified in the BIOS parameter block in bootsec.img. The advantage of makefloppy.fth is that it reads the filesystem layout parameters from the BPB in bootsec.img, so its guaranteed to be consistent. If bootsec.fth were edited to change the layout, the arguments to "mkdosfs" would have to change. (But there's little need to change that layout, since it's a standard floppy size.) The advantage of the Linux command sequence is that it creates a file with "holes", thus saving disk space for awhile (until something fills in the holes). === Booting on a Real PC from a USB Key === To build for a real PC: $ cd openfirmware/cpu/x86/biosload $ cp config-usbkey.fth config.fth $ cd build $ make That will create a file named "ofw.c32" that can be booted from a USB key that has "syslinux" installed on it. http://www.911cd.net/forums//index.php?showtopic=21902 has some tips on how to install syslinux. Your syslinux.cfg file needs a line that says: kernel ofw.c32 (There is also some support in the source code / config.fth for building a version to boot via Grub, but I haven't tested that for some time, so it might be broken.) 39e8b3d7d9efbf1b0c2adc39f0d5ca3771fab55b 403 402 2008-12-29T11:03:26Z Wmb 5 Added GRUB instructions wikitext text/x-wiki This page tells how to build the x86 version of Open Firmware to boot under a conventional BIOS. These instructions specifically describe a configuration that is good for running on the QEMU and VirtualBox emulators, but very similar instructions can be used to make a version that runs on any PC. In this version, OFW is stored on a floppy disk image. The conventional BIOS boots it as if it were an operating system like DOS or Windows. OFW then "takes over" the machine, ignoring the conventional BIOS that booted it. That BIOS has already done the work of early-startup machine initialization - turning on the memory controller and configuring chipset-dependent registers. In addition to this BIOS-loaded version, there are two other ways to run OFW under QEMU: * You can build an OFW image that replaces the QEMU BIOS ROM image, entirely from code in the OFW tree - see [[Building OFW for QEMU]]. * You can build an OFW image that replaces the QEMU BIOS ROM image, using OFW as a "payload" for Coreboot, so Coreboot does the early-startup stuff - see [[OFW as a Coreboot Payload]]. === Software Requirements === * qemu-0.9.1 or VirtualBox * Open Firmware rev. >= 1053 * GCC and GNU make - most versions work for builing OFW === Getting Open Firmware Source === $ svn co svn://openfirmware.info/openfirmware === Building OFW === $ cd cpu/x86/pc/biosload/ $ cp config-virtualbox.fth config.fth $ cd build $ make floppyofw.img The "config-virtualbox.fth" configuration is known to work with QEMU. Other configurations may work also - but the "qemu-loaded" config option isn't what you want for this technique, because it's a subcase of the CoreBoot-payload configuration. You will use the "floppyofw.img" output file in a later step. === Making a bootable Floppy Image === $ ../../../Linux/forth fw.dic ../makefloppy.fth This creates a file that is a bootable floppy image with an empty FAT12 filesystem. This step only has to be done once. === Copying OFW onto the Floppy Image === $ mkdir flp $ sudo mount -t msdos -o loop floppy.img flp $ sudo cp floppyofw.img flp/ofw.img $ sudo umount flp Copy floppy.img to the QEMU or VirtualBox directory. === Booting OFW from QEMU === $ qemu -L <dir> -boot a -fda floppy.img "<dir>" is the directory that contains QEMU's BIOS and VGA BIOS files. === Booting OFW from VirtualBox === The following VirtualBox configuration settings work for me: OS Type = Other/Unknown Base Memory = 64 MB Video Memory = 8 MB Boot Order = Floppy, Hard Disk ACPI = Disabled IO APIC = Disabled VT-x/AMD-V = Disabled PAE/NX = Disabled Floppy Image = floppy.img Network Adapter 1 = PCnet-PCI II (host interface, <tap name>) (other settings are mostly irrelevant) === Recompiling === If you want to make changes and recompile OFW, you need not repeat the "makefloppy" step; you can just loopback mount the floppy image and copy the new OFW version to ofw.img . === What is on the Floppy Image === The floppy image is a bootable floppy with a FAT12 filesystem. Its first two sectors contain a simple bootloader program that uses BIOS INT 13 callbacks to read floppy sectors. The program scans the FAT root directory entries to find the file "ofw.img", then loads that into memory and jumps to it. When you build floppyofw.img, as a side effect it also builds bootsec.img, which is that simple bootloader. The source code (Forth-style assembly language) is in biosload/bootsec.fth . The "makefloppy.fth" program that creates the image is pretty simple; it copies bootsec.img to the output file "floppy.img", creates a couple of initially empty FAT tables, zeros the root directory area, and fills the data area with zeros. === Making a Prototype Floppy Image with Linux Commands === Here's a pair of Linux commands that accomplish the same thing as makefloppy.fth: Step6a $ /sbin/mkdosfs -C -f 2 -F 12 -R 2 -r 224 -s 1 -S 512 floppy.img 1440 Step6b $ dd <bootsec.img of=floppy.img conv=nocreat,notrunc The arguments to mkdosfs force the filesystem layout to match the layout that is specified in the BIOS parameter block in bootsec.img. The advantage of makefloppy.fth is that it reads the filesystem layout parameters from the BPB in bootsec.img, so its guaranteed to be consistent. If bootsec.fth were edited to change the layout, the arguments to "mkdosfs" would have to change. (But there's little need to change that layout, since it's a standard floppy size.) The advantage of the Linux command sequence is that it creates a file with "holes", thus saving disk space for awhile (until something fills in the holes). === Booting on a Real PC from a USB Key === To build for a real PC: $ cd openfirmware/cpu/x86/biosload $ cp config-usbkey.fth config.fth $ cd build $ make That will create a file named "ofw.c32" that can be booted from a USB key that has "syslinux" installed on it. http://www.911cd.net/forums//index.php?showtopic=21902 has some tips on how to install syslinux. Your syslinux.cfg file needs a line that says: kernel ofw.c32 === Booting on a Real PC via GRUB or Etherboot === You can make a version in "Multiboot" format that you can boot with GRUB: $ cd openfirmware/cpu/x86/biosload $ cp config-grub.fth config.fth $ cd build $ make The output file is "ofwgrub.elf". Copy that in to /boot on your GRUB-enabled disk and add this to /boot/grub/menu.lst: title Open Firmware kernel /boot/ofwgrub.elf That version can also be booted via Etherboot. Here's an example of how to Etherboot it with QEMU (assuming that the ofwgrub.elf file is in /tmp on the host machine): qemu -L . -boot n -tftp /tmp -bootp /ofwgrub.elf 44553275af051d7c1237d6f85a863fcb49bc71fc 404 403 2011-03-18T22:00:29Z Wmb 5 moved [[Building OFW to Run Under BIOS]] to [[Building OFW to Load from BIOS]]: New title is more accurate wikitext text/x-wiki This page tells how to build the x86 version of Open Firmware to boot under a conventional BIOS. These instructions specifically describe a configuration that is good for running on the QEMU and VirtualBox emulators, but very similar instructions can be used to make a version that runs on any PC. In this version, OFW is stored on a floppy disk image. The conventional BIOS boots it as if it were an operating system like DOS or Windows. OFW then "takes over" the machine, ignoring the conventional BIOS that booted it. That BIOS has already done the work of early-startup machine initialization - turning on the memory controller and configuring chipset-dependent registers. In addition to this BIOS-loaded version, there are two other ways to run OFW under QEMU: * You can build an OFW image that replaces the QEMU BIOS ROM image, entirely from code in the OFW tree - see [[Building OFW for QEMU]]. * You can build an OFW image that replaces the QEMU BIOS ROM image, using OFW as a "payload" for Coreboot, so Coreboot does the early-startup stuff - see [[OFW as a Coreboot Payload]]. === Software Requirements === * qemu-0.9.1 or VirtualBox * Open Firmware rev. >= 1053 * GCC and GNU make - most versions work for builing OFW === Getting Open Firmware Source === $ svn co svn://openfirmware.info/openfirmware === Building OFW === $ cd cpu/x86/pc/biosload/ $ cp config-virtualbox.fth config.fth $ cd build $ make floppyofw.img The "config-virtualbox.fth" configuration is known to work with QEMU. Other configurations may work also - but the "qemu-loaded" config option isn't what you want for this technique, because it's a subcase of the CoreBoot-payload configuration. You will use the "floppyofw.img" output file in a later step. === Making a bootable Floppy Image === $ ../../../Linux/forth fw.dic ../makefloppy.fth This creates a file that is a bootable floppy image with an empty FAT12 filesystem. This step only has to be done once. === Copying OFW onto the Floppy Image === $ mkdir flp $ sudo mount -t msdos -o loop floppy.img flp $ sudo cp floppyofw.img flp/ofw.img $ sudo umount flp Copy floppy.img to the QEMU or VirtualBox directory. === Booting OFW from QEMU === $ qemu -L <dir> -boot a -fda floppy.img "<dir>" is the directory that contains QEMU's BIOS and VGA BIOS files. === Booting OFW from VirtualBox === The following VirtualBox configuration settings work for me: OS Type = Other/Unknown Base Memory = 64 MB Video Memory = 8 MB Boot Order = Floppy, Hard Disk ACPI = Disabled IO APIC = Disabled VT-x/AMD-V = Disabled PAE/NX = Disabled Floppy Image = floppy.img Network Adapter 1 = PCnet-PCI II (host interface, <tap name>) (other settings are mostly irrelevant) === Recompiling === If you want to make changes and recompile OFW, you need not repeat the "makefloppy" step; you can just loopback mount the floppy image and copy the new OFW version to ofw.img . === What is on the Floppy Image === The floppy image is a bootable floppy with a FAT12 filesystem. Its first two sectors contain a simple bootloader program that uses BIOS INT 13 callbacks to read floppy sectors. The program scans the FAT root directory entries to find the file "ofw.img", then loads that into memory and jumps to it. When you build floppyofw.img, as a side effect it also builds bootsec.img, which is that simple bootloader. The source code (Forth-style assembly language) is in biosload/bootsec.fth . The "makefloppy.fth" program that creates the image is pretty simple; it copies bootsec.img to the output file "floppy.img", creates a couple of initially empty FAT tables, zeros the root directory area, and fills the data area with zeros. === Making a Prototype Floppy Image with Linux Commands === Here's a pair of Linux commands that accomplish the same thing as makefloppy.fth: Step6a $ /sbin/mkdosfs -C -f 2 -F 12 -R 2 -r 224 -s 1 -S 512 floppy.img 1440 Step6b $ dd <bootsec.img of=floppy.img conv=nocreat,notrunc The arguments to mkdosfs force the filesystem layout to match the layout that is specified in the BIOS parameter block in bootsec.img. The advantage of makefloppy.fth is that it reads the filesystem layout parameters from the BPB in bootsec.img, so its guaranteed to be consistent. If bootsec.fth were edited to change the layout, the arguments to "mkdosfs" would have to change. (But there's little need to change that layout, since it's a standard floppy size.) The advantage of the Linux command sequence is that it creates a file with "holes", thus saving disk space for awhile (until something fills in the holes). === Booting on a Real PC from a USB Key === To build for a real PC: $ cd openfirmware/cpu/x86/biosload $ cp config-usbkey.fth config.fth $ cd build $ make That will create a file named "ofw.c32" that can be booted from a USB key that has "syslinux" installed on it. http://www.911cd.net/forums//index.php?showtopic=21902 has some tips on how to install syslinux. Your syslinux.cfg file needs a line that says: kernel ofw.c32 === Booting on a Real PC via GRUB or Etherboot === You can make a version in "Multiboot" format that you can boot with GRUB: $ cd openfirmware/cpu/x86/biosload $ cp config-grub.fth config.fth $ cd build $ make The output file is "ofwgrub.elf". Copy that in to /boot on your GRUB-enabled disk and add this to /boot/grub/menu.lst: title Open Firmware kernel /boot/ofwgrub.elf That version can also be booted via Etherboot. Here's an example of how to Etherboot it with QEMU (assuming that the ofwgrub.elf file is in /tmp on the host machine): qemu -L . -boot n -tftp /tmp -bootp /ofwgrub.elf 44553275af051d7c1237d6f85a863fcb49bc71fc OpenBIOS 0 16 177 176 2009-02-28T13:02:38Z BlueSwirl 14 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/131/openbios-devel?old_path=%2F&old=131&format=zip OpenBIOS 1.0alpha2] (2007-04-27) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To ownload the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-utils If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ 731936080a95a7037842ea0c4f5e5e8cb8a64736 178 177 2009-02-28T13:21:45Z BlueSwirl 14 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/131/openbios-devel?old_path=%2F&old=131&format=zip OpenBIOS 1.0alpha2] (2007-04-27) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-utils If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = First, select the build targets: $ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64 The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler. Finally the build command: $ make or $ make build-verbose If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ 01bed479f69bca0f3cfb92f323ff1ed5717665cc 179 178 2009-02-28T14:09:28Z BlueSwirl 14 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. We are heading towards the release of OpenBIOS v1.0. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/131/openbios-devel?old_path=%2F&old=131&format=zip OpenBIOS 1.0alpha2] (2007-04-27) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = As of 2009-02-28, OpenBIOS can be used directly as a boot ROM for [http://bellard.org/qemu QEMU] system emulators for PPC, PPC64 and Sparc32. OpenBIOS/Sparc64 also exists but does not work very well yet. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD. There have been attempts to get Solaris boot but so far this has not been successful. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can load a kernel but it hangs or crashes early. [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-utils If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = First, select the build targets: $ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64 The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler. Finally the build command: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ cdc210f2a6f5eff46748a99438d9493c098cacea 180 179 2009-03-01T20:11:52Z BlueSwirl 14 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. OpenBIOS v1.0 has been released. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/463/openbios-devel?old_path=%2F&old=463&format=zip OpenBIOS 1.0] (2009-03-01) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://bellard.org/qemu QEMU] system emulators for PPC, PPC64 and Sparc32. OpenBIOS/Sparc64 also exists but does not work very well yet. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD. There have been attempts to get Solaris boot but so far this has not been successful. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can load a kernel but it hangs or crashes early. [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/openbios-devel if you want a specific revision: (see the Confirmed working svn revisions page) $ svn co svn://openbios.org/openbios/openbios-devel -r 4 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/fcode-utils If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/fcode-utils</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = First, select the build targets: $ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64 The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler. Finally the build command: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ f63e3c78d9463010d81ae05bcb4b6579f159fee6 181 180 2009-03-08T08:07:23Z BlueSwirl 14 add /trunk to paths wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. OpenBIOS v1.0 has been released. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/463/openbios-devel?old_path=%2F&old=463&format=zip OpenBIOS 1.0] (2009-03-01) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://bellard.org/qemu QEMU] system emulators for PPC, PPC64 and Sparc32. OpenBIOS/Sparc64 also exists but does not work very well yet. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD. There have been attempts to get Solaris boot but so far this has not been successful. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can load a kernel but it hangs or crashes early. [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 463 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = First, select the build targets: $ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64 The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler. Finally the build command: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ cc22dfdbe0ee42070357d60870ac6832d3ab2aae 182 181 2009-03-08T08:28:09Z BlueSwirl 14 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. OpenBIOS v1.0 has been released. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/463/openbios-devel?old_path=%2F&old=463&format=zip OpenBIOS 1.0] (2009-03-01) '''NOTE:''' The SVN paths have changed (/trunk added), please update your repositories. '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://bellard.org/qemu QEMU] system emulators for PPC, PPC64 and Sparc32. OpenBIOS/Sparc64 also exists but does not work very well yet. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD. There have been attempts to get Solaris boot but so far this has not been successful. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can load a kernel but it hangs or crashes early. [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 463 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = First, select the build targets: $ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64 The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler. Finally the build command: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ a345bb73857ccb8693dab758ca2224dd8da701b1 183 182 2009-03-22T15:47:46Z BlueSwirl 14 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. OpenBIOS v1.0 has been released. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/463/openbios-devel?old_path=%2F&old=463&format=zip OpenBIOS 1.0] (2009-03-01) '''NOTE:''' The SVN paths have changed (/trunk added in r470), please update your repositories. The following command should be helpful: $ cd openbios-devel $ svn switch svn://openbios.org/openbios/trunk/openbios-devel . Unfortunately the change also means some inconvenience when bisecting or downloading old versions. '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://bellard.org/qemu QEMU] system emulators for PPC, PPC64 and Sparc32. OpenBIOS/Sparc64 also exists but does not work very well yet. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD. There have been attempts to get Solaris boot but so far this has not been successful. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can load a kernel but it hangs or crashes early. [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 480 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. For versions prior to r470, please remove the /trunk component from the path, for example: [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel?rev=469 r469]. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = First, select the build targets: $ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64 The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler. Finally the build command: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ f5538cdbfd0e90e551c6f5e37d523907bc2cd71a 184 183 2010-05-06T16:04:05Z Programmingkid 15 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. OpenBIOS v1.0 has been released. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/463/openbios-devel?old_path=%2F&old=463&format=zip OpenBIOS 1.0] (2009-03-01) '''NOTE:''' The SVN paths have changed (/trunk added in r470), please update your repositories. The following command should be helpful: $ cd openbios-devel $ svn switch svn://openbios.org/openbios/trunk/openbios-devel . Unfortunately the change also means some inconvenience when bisecting or downloading old versions. '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://bellard.org/qemu QEMU] system emulators for PPC, PPC64 and Sparc32. OpenBIOS/Sparc64 also exists but does not work very well yet. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD. There have been attempts to get Solaris boot but so far this has not been successful. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can load a kernel but it hangs or crashes early. [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 480 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. For versions prior to r470, please remove the /trunk component from the path, for example: [http://tracker.coreboot.org/trac/openbios/browser/openbios-devel?rev=469 r469]. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = First, make the switch-arch script executable: $ chmod +x ./config/scripts/switch-arch Second, select the build targets: $ ./config/scripts/switch-arch cross-sparc32 cross-sparc64 cross-x86 cross-ppc amd64 The cross- targets use cross compilers to build the images. In the above example, only amd64 target uses the native host compiler. Finally the build command: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ 39103213c899ca76da66a58d95a8f8ab2b401be1 Welcome to OpenBIOS 0 2 45 44 2009-02-28T13:28:40Z BlueSwirl 14 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM, Sparc and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, [[SLOF|IBM]] and others. In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://www.denx.de/wiki/U-Boot U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.coreboot.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website] to download the full archive (190MB) or check out our [[OpenBOOT|local mirror]] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ f574fc407af85c50543f8ce7fb74c7750151b3e8 46 45 2009-03-01T20:48:40Z BlueSwirl 14 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM, Sparc and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, [[SLOF|IBM]] and others. In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://www.denx.de/wiki/U-Boot U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''OpenBIOS v1.0 released''' (2009-03-01) OpenBIOS v1.0 has been released. For more information, please visit the [[OpenBIOS|development page]]. '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.coreboot.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website] to download the full archive (190MB) or check out our [[OpenBOOT|local mirror]] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 9e9de471557d817998d73c42b9a4ae9ff7685214 FCODE suite 0 17 269 268 2009-03-12T15:42:37Z WikiSysop 1 wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils?rev=197 Sources] online. Available as a ZIP-File: [http://tracker.coreboot.org/trac/openbios/changeset/197/fcode-utils?old_path=%2F&old=197&format=zip FCode-utils 1.0.2] See the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/ChangeLog?rev=197 ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a ZIP-File: [http://tracker.coreboot.org/trac/openbios/changeset/236/fcode-utils/documentation?old_path=%2F&old=&format=zip Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created. There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/localvalues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/LocalValuesSupport.fth basic functionality] * the second adds a [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate [http://tracker.coreboot.org/trac/openbios/changeset/236/fcode-utils/localvalues?old_path=%2F&format=zip ZIP-File]. === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/TODO collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testsuite accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. Run the unit-test cases with $ make tests === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testsuite/AutoExec AutoExec] automates the execution, and * [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testsuite/AutoCompare AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testlogs/testlogs-x86-cygwin X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testlogs/testlogs-ppc-linux PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testlogs/testlogs-ppc-aix PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] == Kudos and Thanks == <div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:David@paktor.biz David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!''' </div> __NOEDITSECTION__ 041ff4db435d18faf648f90e83fce0db83951402 270 269 2009-03-12T23:54:06Z WikiSysop 1 wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils?rev=197 Sources] online. Available as a ZIP-File: [http://tracker.coreboot.org/trac/openbios/changeset/197/fcode-utils?old_path=%2F&old=197&format=zip FCode-utils 1.0.2] See the [http://tracker.coreboot.org/trac/openbios/browser/fcode-utils/ChangeLog?rev=197 ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. Available as a ZIP-File: [http://tracker.coreboot.org/trac/openbios/changeset/236/fcode-utils/documentation?old_path=%2F&old=&format=zip Documentation Archive] There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created. There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/LocalValuesSupport.fth basic functionality] * the second adds a [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/localvalues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite and as a seperate [http://tracker.coreboot.org/trac/openbios/changeset/236/fcode-utils/localvalues?old_path=%2F&format=zip ZIP-File]. === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/TODO collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testsuite accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. Run the unit-test cases with $ make tests === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testsuite/AutoExec AutoExec] automates the execution, and * [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testsuite/AutoCompare AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testlogs/testlogs-x86-cygwin X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testlogs/testlogs-ppc-linux PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [http://tracker.coreboot.org/trac/openbios/browser/trunk/fcode-utils-devel/testlogs/testlogs-ppc-aix PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] == Kudos and Thanks == <div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:David@paktor.biz David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!''' </div> __NOEDITSECTION__ ca8b472b56c2441639e579cf9bde7dba3f60b4d2 FlashRom 0 25 337 336 2010-02-09T14:17:47Z Stepan 2 /* Flash Updates with Linux */ wikitext text/x-wiki {{stub}} __NOTOC__ = Flash Updates with Linux = Formerly OpenBIOS provided its own flashing facility implemented as a device driver called '''/dev/bios'''. One big disadvantage of '''/dev/bios''' was that it needed to be recompiled for every minor kernel update. Ollie Lho, back when working at SIS, started a new effort which he called '''flash_and_burn'''. This utility became part of the [http://www.coreboot.org coreboot project] and evolved to work with non-SIS chipsets. [[User:Stepan|Stefan Reinauer]] added a lot of new features to Ollie's utility and renamed it to '''flashrom'''. This utility still lacks some features the old '''/dev/bios''' driver was having, but it can easily be used from userspace without recompiling the kernel. For more information about flashrom see http://www.flashrom.org/ 61b5437f2a1fa3679fb51ebbfa63b4c008b421de Adding words to openbios 0 44 405 2010-04-30T17:47:49Z Programmingkid 15 Created page with 'How to add “words” to the OpenBIOS Dictionary using the C language. In this example, we are going to implement a forth “word” in C. There are two arrays that need to be…' wikitext text/x-wiki How to add “words” to the OpenBIOS Dictionary using the C language. In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/primitives.c. The two arrays are used to map a C function to a forth word. The array in bootstrap.c is where the name of the forth word would go. The array in primitives.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly. Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this: static void dog(void) { printk(“bark bark!”); } Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully. Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look: /* the word names are used to generate the prim words in the * dictionary. This is done by the C written interpreter. */ static const char *wordnames[] = { "(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)", "(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop", "2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>", "r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*", "mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a", "and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@", "w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<", "sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute", "here", "here!", "dobranch", "do?branch", "unaligned-w@", "unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@", "iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug", "$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here }; Next we add the C function name to the end of the function list. Open the file primitives.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary. sysdebug, /* sys-debug */ do_include, /* $include */ do_encode_file, /* $encode-file */ do_debug_xt, /* (debug */ do_debug_off, /* (debug-off) */ dog /* dog */ //<-------- insert here }; Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder: cd openbios-devel Then change the build script to be able to execute: chmod 777 ./config/scripts/switch-arch Set the architure you wish to build openbios for (x86 is used in this example): ./config/scripts/switch-arch x86 Then start building OpenBIOS: make Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS. We run the program like this: ./obj-x86/openbios-unix ./obj-x86/openbios-unix.dict We should then be greeted by the OpenBIOS Banner: Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06 Type 'help' for detailed information [unix] Booting default not supported. 0 > Type dog at the prompt and see what it says: 0 > dog bark bark! ok 0 > Congratulations, you have just taken your first step to improving OpenBIOS. 1bc8f14af7c088b7014617115264097d12296d45 406 405 2010-05-05T20:39:16Z Programmingkid 15 wikitext text/x-wiki How to add “words” to the OpenBIOS Dictionary using the C language. In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/primitives.c. The two arrays are used to map a C function to a forth word. The array in bootstrap.c is where the name of the forth word would go. The array in primitives.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly. Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this: static void dog(void) { printk(“bark bark!”); } Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully. Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look: /* the word names are used to generate the prim words in the dictionary. This is done by the C written interpreter. */ static const char *wordnames[] = { "(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)", "(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop", "2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>", "r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*", "mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a", "and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@", "w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<", "sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute", "here", "here!", "dobranch", "do?branch", "unaligned-w@", "unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@", "iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug", "$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here }; Next we add the C function name to the end of the function list. Open the file primitives.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary. sysdebug, /* sys-debug */ do_include, /* $include */ do_encode_file, /* $encode-file */ do_debug_xt, /* (debug */ do_debug_off, /* (debug-off) */ dog /* dog */ //<-------- insert here }; Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder: cd openbios-devel Then change the build script to be able to execute: chmod 777 ./config/scripts/switch-arch Set the architure you wish to build openbios for (x86 is used in this example): ./config/scripts/switch-arch x86 Then start building OpenBIOS: make Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS. We run the program like this: ./obj-x86/openbios-unix ./obj-x86/openbios-unix.dict We should then be greeted by the OpenBIOS Banner: Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06 Type 'help' for detailed information [unix] Booting default not supported. 0 > Type dog at the prompt and see what it says: 0 > dog bark bark! ok 0 > Congratulations, you have just taken your first step to improving OpenBIOS. 086218b102ec5375719680809f77f960153a2fde Building OFW for ARM 0 45 407 2010-08-11T06:28:10Z Wmb 5 Compiling the ARM version wikitext text/x-wiki This page tells how to build Open Firmware for an ARM target system. === Host System Requirements === During the Open Firmware build process, the Forth system inside OFW is executed several times to extend itself. Those steps must run on the same CPU instruction set (in this case ARM) as the final target. So you must build OFW either on an ARM computer or by using an ARM instruction set emulator running on some other computer. [[http://wiki.qemu.org/ QEMU]] works well for this purpose. ==== Compiler Setup for Native ARM Host ==== To compile on an ARM host, you need Linux on that host, along with the GNU toolchain (GCC and GNU make) plus the Subversion version control system. ==== Compiler Setup for x86 Host ==== To compile on an x86 host, you need everything listed for the native host (Linux, GNU toolchain, and Subversion), plus QEMU. To install QEMU: * Debian: sudo apt-get install qemu * Ubuntu: sudo apt-get install qemu * Fedora: sudo yum install qemu-user For Fedora, you might also need to disable SELinux security during OFW compilation: sudo /usr/sbin/setenforce 0 === Building Open Firmware === Get the Open Firmware source: svn co svn://openfirmware.info/openfirmware Build OFW: cd openfirmware/cpu/arm/mmp2/build make The last line of the compilation output should say something like: --- Saving as mmp2.rom That tells you the name of the output file. There are some other build directories like "cpu/arm/versatilepb/build". At the time of this writing, they have not been fixed up to "do the right thing" with the emulated build environment. The Makefile in cpu/arm/mmp2/build is the current "gold standard" for the build automation. 4eb7e9129ead9047d75a4499d75cd0bbdc90064e 408 407 2010-08-11T08:52:36Z Wmb 5 Output file name is ofw.rom, not mmp2.rom wikitext text/x-wiki This page tells how to build Open Firmware for an ARM target system. === Host System Requirements === During the Open Firmware build process, the Forth system inside OFW is executed several times to extend itself. Those steps must run on the same CPU instruction set (in this case ARM) as the final target. So you must build OFW either on an ARM computer or by using an ARM instruction set emulator running on some other computer. [[http://wiki.qemu.org/ QEMU]] works well for this purpose. ==== Compiler Setup for Native ARM Host ==== To compile on an ARM host, you need Linux on that host, along with the GNU toolchain (GCC and GNU make) plus the Subversion version control system. ==== Compiler Setup for x86 Host ==== To compile on an x86 host, you need everything listed for the native host (Linux, GNU toolchain, and Subversion), plus QEMU. To install QEMU: * Debian: sudo apt-get install qemu * Ubuntu: sudo apt-get install qemu * Fedora: sudo yum install qemu-user For Fedora, you might also need to disable SELinux security during OFW compilation: sudo /usr/sbin/setenforce 0 === Building Open Firmware === Get the Open Firmware source: svn co svn://openfirmware.info/openfirmware Build OFW: cd openfirmware/cpu/arm/mmp2/build make The last line of the compilation output should say something like: --- Saving as ofw.rom That tells you the name of the output file. There are some other build directories like "cpu/arm/versatilepb/build". At the time of this writing, they have not been fixed up to "do the right thing" with the emulated build environment. The Makefile in cpu/arm/mmp2/build is the current "gold standard" for the build automation. 7e86901ac119d1778f331aff8c01bbfa0a68d427 409 408 2010-08-11T17:45:04Z Wmb 5 More information about finding qemu-arm wikitext text/x-wiki This page tells how to build Open Firmware for an ARM target system. === Host System Requirements === During the Open Firmware build process, the Forth system inside OFW is executed several times to extend itself. Those steps must run on the same CPU instruction set (in this case ARM) as the final target. So you must build OFW either on an ARM computer or by using an ARM instruction set emulator running on some other computer. [[http://wiki.qemu.org/ QEMU]] works well for this purpose. ==== Compiler Setup for Native ARM Host ==== To compile on an ARM host, you need Linux on that host, along with the GNU toolchain (GCC and GNU make) plus the Subversion version control system. ==== Compiler Setup for x86 Host ==== To compile on an x86 host, you need everything listed for the native host (Linux, GNU toolchain, and Subversion), plus QEMU. To install QEMU: * Debian: sudo apt-get install qemu * Ubuntu 8.04 (Hardy): sudo apt-get install qemu * Ubuntu 9.10 (Karmic): sudo apt-get install qemu qemu-kvm-extras * Fedora: sudo yum install qemu-user In general, the file that you need is "qemu-arm". You can use commands like (Fedora) "yum whatprovides qemu-arm" or (Debian/Ubuntu) "apt-file search qemu-arm" to work out which top-level package to install. For Fedora, you might also need to temporarily disable SELinux security before OFW compilation: sudo /usr/sbin/setenforce 0 === Building Open Firmware === Get the Open Firmware source: svn co svn://openfirmware.info/openfirmware Build OFW: cd openfirmware/cpu/arm/mmp2/build make The last line of the compilation output should say something like: --- Saving as ofw.rom That tells you the name of the output file. There are some other build directories like "cpu/arm/versatilepb/build". At the time of this writing, they have not been fixed up to "do the right thing" with the emulated build environment. The Makefile in cpu/arm/mmp2/build is the current "gold standard" for the build automation. fba6b4a8b4120ae77ff5f7442879418cd9e99b8c 410 409 2010-08-11T18:03:06Z Wmb 5 Clarified which toolchain wikitext text/x-wiki This page tells how to build Open Firmware for an ARM target system. === Host System Requirements === During the Open Firmware build process, the Forth system inside OFW is executed several times to extend itself. Those steps must run on the same CPU instruction set (in this case ARM) as the final target. So you must build OFW either on an ARM computer or by using an ARM instruction set emulator running on some other computer. [[http://wiki.qemu.org/ QEMU]] works well for this purpose. ==== Compiler Setup for Native ARM Host ==== To compile on an ARM host, you need Linux on that host, along with the GNU toolchain (GCC), GNU make, and the Subversion version control system. ==== Compiler Setup for x86 Host ==== To compile on an x86 host, you need everything listed for the native host (Linux, GNU toolchain, GNU make, and Subversion), plus QEMU. Note that the GNU toolchain that you need is the native x86 one, not an ARM cross-toolchain. OFW uses its own built-in ARM assembler. The native x86 toolchain is needed for the one-time step of compiling a small interface program that lets the OFW builder operate under Linux. It would be possible to eliminate that need by distributing a precompiled binary of that interface program, but in practice, most developers already have the native x86 toolchain already installed, so requiring it isn't a problem (as opposed to cross-toolchains, which can be a serious hassle to set up correctly). To install QEMU: * Debian: sudo apt-get install qemu * Ubuntu 8.04 (Hardy): sudo apt-get install qemu * Ubuntu 9.10 (Karmic): sudo apt-get install qemu qemu-kvm-extras * Fedora: sudo yum install qemu-user In general, the file that you need is "qemu-arm". You can use commands like (Fedora) "yum whatprovides qemu-arm" or (Debian/Ubuntu) "apt-file search qemu-arm" to work out which top-level package to install. For Fedora, you might also need to temporarily disable SELinux security before OFW compilation: sudo /usr/sbin/setenforce 0 === Building Open Firmware === Get the Open Firmware source: svn co svn://openfirmware.info/openfirmware Build OFW: cd openfirmware/cpu/arm/mmp2/build make The last line of the compilation output should say something like: --- Saving as ofw.rom That tells you the name of the output file. There are some other build directories like "cpu/arm/versatilepb/build". At the time of this writing, they have not been fixed up to "do the right thing" with the emulated build environment. The Makefile in cpu/arm/mmp2/build is the current "gold standard" for the build automation. 6fe7693c8c4b15d2f11ab989d68fe03962d53c28 411 410 2010-08-11T18:45:42Z Wmb 5 Info about other build versions wikitext text/x-wiki This page tells how to build Open Firmware for an ARM target system. === Host System Requirements === During the Open Firmware build process, the Forth system inside OFW is executed several times to extend itself. Those steps must run on the same CPU instruction set (in this case ARM) as the final target. So you must build OFW either on an ARM computer or by using an ARM instruction set emulator running on some other computer. [[http://wiki.qemu.org/ QEMU]] works well for this purpose. ==== Compiler Setup for Native ARM Host ==== To compile on an ARM host, you need Linux on that host, along with the GNU toolchain (GCC), GNU make, and the Subversion version control system. ==== Compiler Setup for x86 Host ==== To compile on an x86 host, you need everything listed for the native host (Linux, GNU toolchain, GNU make, and Subversion), plus QEMU. Note that the GNU toolchain that you need is the native x86 one, not an ARM cross-toolchain. OFW uses its own built-in ARM assembler. The native x86 toolchain is needed for the one-time step of compiling a small interface program that lets the OFW builder operate under Linux. It would be possible to eliminate that need by distributing a precompiled binary of that interface program, but in practice, most developers already have the native x86 toolchain already installed, so requiring it isn't a problem (as opposed to cross-toolchains, which can be a serious hassle to set up correctly). To install QEMU: * Debian: sudo apt-get install qemu * Ubuntu 8.04 (Hardy): sudo apt-get install qemu * Ubuntu 9.10 (Karmic): sudo apt-get install qemu qemu-kvm-extras * Fedora: sudo yum install qemu-user In general, the file that you need is "qemu-arm". You can use commands like (Fedora) "yum whatprovides qemu-arm" or (Debian/Ubuntu) "apt-file search qemu-arm" to work out which top-level package to install. For Fedora, you might also need to temporarily disable SELinux security before OFW compilation: sudo /usr/sbin/setenforce 0 === Building Open Firmware === Get the Open Firmware source: svn co svn://openfirmware.info/openfirmware Build OFW: cd openfirmware/cpu/arm/mmp2/build make The last line of the compilation output should say something like: --- Saving as ofw.rom That tells you the name of the output file. There are some other build directories like "cpu/arm/versatilepb/build". They work the same way - just type "make" in the directory. At present, those other versions are fairly rudimentary, containing core OFW plus a serial driver for interaction, but lacking drivers for most of the other hardware on those systems. Essentially, they are "quick ports to get an ok prompt". The MMP2 version is quite a bit more complete, on its way to being a fully-fledged OFW system. The MMP2 is Marvell's hardware development platform for their PXA688 chip, which is slated for use in the OLPC XO-1.75 system. We are using the MMP2 to get a jump-start on XO-1.75 development. dbc4f63860e4bf9d8b384e057faceaffe4d750bf How Local Variables in Forth Work --- Using Apple’s Open Firmware Implementation 0 46 412 2010-09-25T19:32:26Z Programmingkid 15 Created page with "<P><FONT SIZE=5><B>How Local Variables in Forth Work --- Using Apple&#146;s Open Firmware Implementation<BR> </B></FONT><BR> <FONT SIZE=3><FONT COLOR="#AA0000"><B><U>Contents:</..." wikitext text/x-wiki <P><FONT SIZE=5><B>How Local Variables in Forth Work --- Using Apple&#146;s Open Firmware Implementation<BR> </B></FONT><BR> <FONT SIZE=3><FONT COLOR="#AA0000"><B><U>Contents:</U></B></FONT><BR> How to try out these code examples<BR> Declaring local variables<BR> Setting local variables<BR> Obtaining local variables&#146; values<BR> Booting Mac OS X in OpenBIOS<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>How to try out these code examples</U></B></FONT><BR> <BR> The following example code may be entered and ran in Apple&#146;s Open Firmware. In order to access Open Firmware, just hold down Command-Option-O-F while you boot your pre-Intel Mac. PowerPC iMacs and PowerBooks, iBooks, PowerMac G3&#146;s, G4&#146;s, and G5&#146;s all have Open Firmware built-in. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Declaring local variables:</U></B></FONT><BR> <BR> Place curly braces next to the word name. The curly braces must be on the same line as the word&#146;s name. The semicolon is optional. The semicolon lets the system know that the variables following it will not be initializing their values to the values that would have been popped from the stack. <BR> <BR> <FONT COLOR="#003399"><B>Example 1</B></FONT><BR> <BR> : myword { ; cat dog }<BR> ;<BR> <BR> Omitting the semicolon will initialize the local variable&#146;s values to values popped from the stack. Make sure the stack has enough values in it before proceeding. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Setting local variables:</U></B></FONT><FONT COLOR="#DD0000"><BR> </FONT><BR> The word &#147;-&gt;&#148; (hyphen greater-than) is used to set the values of local variables. <BR> <BR> <FONT COLOR="#003399"><B>Example 2</B></FONT><BR> <BR> : myword { ; cat dog }<BR> 4 -&gt; cat<BR> 5 -&gt; dog<BR> ;<BR> <BR> In the above example, the numbers are each pushed into the stack first. Then the -&gt; word pops a value out of the stack and sets each variable&#146;s value to a popped value. If a value is already in the stack, the following code would work as well: -&gt; cat (The 4 has been omitted).<BR> <BR> <FONT COLOR="#AA0000"><B><U>Obtaining a local variable&#146;s value</U></B></FONT><BR> <BR> To push a local variable&#146;s value onto the stack, just enter a local variable&#146;s name in a word. <BR> <BR> <FONT COLOR="#003399"><B>Example 3</B></FONT><BR> <BR> : myword { ; cat dog }<BR> <BR> 4 -&gt; cat<BR> 5 -&gt; dog<BR> <BR> cat \ cat&#146;s value pushed onto stack ( - cat)<BR> dog \ dog&#146;s value pushed onto stack (cat - cat dog )<BR> +<BR> <BR> cr<BR> .&#148; Total animals = &#147; . <BR> cr<BR> ;<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Booting Mac OS X using OpenBIOS. </U></B></FONT><BR> <BR> The reason why OpenBIOS can&#146;t boot Mac OS X is because of missing local variable support. Maybe you can help fix this problem. <BR> <BR> </FONT></P> 69365e2a751e70271c71b58ea4d400e647778a74 413 412 2010-09-25T19:39:31Z Programmingkid 15 wikitext text/x-wiki <BR> <FONT SIZE=3><FONT COLOR="#AA0000"><B><U>Contents:</U></B></FONT><BR> How to try out these code examples<BR> Declaring local variables<BR> Setting local variables<BR> Obtaining local variables&#146; values<BR> Booting Mac OS X in OpenBIOS<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>How to try out these code examples</U></B></FONT><BR> <BR> The following example code may be entered and ran in Apple&#146;s Open Firmware. In order to access Open Firmware, just hold down Command-Option-O-F while you boot your pre-Intel Mac. PowerPC iMacs and PowerBooks, iBooks, PowerMac G3&#146;s, G4&#146;s, and G5&#146;s all have Open Firmware built-in. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Declaring local variables:</U></B></FONT><BR> <BR> Place curly braces next to the word name. The curly braces must be on the same line as the word&#146;s name. The semicolon is optional. The semicolon lets the system know that the variables following it will not be initializing their values to the values that would have been popped from the stack. <BR> <BR> <FONT COLOR="#003399"><B>Example 1</B></FONT><BR> <BR> : myword { ; cat dog }<BR> ;<BR> <BR> Omitting the semicolon will initialize the local variable&#146;s values to values popped from the stack. Make sure the stack has enough values in it before proceeding. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Setting local variables:</U></B></FONT><FONT COLOR="#DD0000"><BR> </FONT><BR> The word &#147;-&gt;&#148; (hyphen greater-than) is used to set the values of local variables. <BR> <BR> <FONT COLOR="#003399"><B>Example 2</B></FONT><BR> <BR> : myword { ; cat dog }<BR> 4 -&gt; cat<BR> 5 -&gt; dog<BR> ;<BR> <BR> In the above example, the numbers are each pushed into the stack first. Then the -&gt; word pops a value out of the stack and sets each variable&#146;s value to a popped value. If a value is already in the stack, the following code would work as well: -&gt; cat (The 4 has been omitted).<BR> <BR> <FONT COLOR="#AA0000"><B><U>Obtaining a local variable&#146;s value</U></B></FONT><BR> <BR> To push a local variable&#146;s value onto the stack, just enter a local variable&#146;s name in a word. <BR> <BR> <FONT COLOR="#003399"><B>Example 3</B></FONT><BR> <BR> : myword { ; cat dog }<BR> <BR> 4 -&gt; cat<BR> 5 -&gt; dog<BR> <BR> cat \ cat&#146;s value pushed onto stack ( - cat)<BR> dog \ dog&#146;s value pushed onto stack (cat - cat dog )<BR> +<BR> <BR> cr<BR> .&#148; Total animals = &#147; . <BR> cr<BR> ;<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Booting Mac OS X using OpenBIOS. </U></B></FONT><BR> <BR> The reason why OpenBIOS can&#146;t boot Mac OS X is because of missing local variable support. Maybe you can help fix this problem. <BR> <BR> </FONT></P> f38735ac3615e2a6345baace51fe7b3477dea754 414 413 2010-09-25T19:52:06Z Programmingkid 15 wikitext text/x-wiki <BR> <FONT SIZE=3><FONT COLOR="#AA0000"><B><U>Contents:</U></B></FONT><BR> How to try out these code examples<BR> Declaring local variables<BR> Setting local variables<BR> Obtaining local variables&#146; values<BR> Booting Mac OS X in OpenBIOS<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>How to try out these code examples</U></B></FONT><BR> <BR> The following example code may be entered and ran in Apple&#146;s Open Firmware. In order to access Open Firmware, just hold down Command-Option-O-F while you boot your pre-Intel Mac. PowerPC iMacs and PowerBooks, iBooks, PowerMac G3&#146;s, G4&#146;s, and G5&#146;s all have Open Firmware built-in. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Declaring local variables:</U></B></FONT><BR> <BR> Place curly braces next to the word name. The curly braces must be on the same line as the word&#146;s name. The semicolon is optional. The semicolon lets the system know that the variables following it will not be initializing their values to the values that would have been popped from the stack. <BR> <BR> <FONT COLOR="#003399"><B>Example 1</B></FONT><BR> <BR> <pre> : myword { ; cat dog } ; </pre> <BR> <BR> <BR> Omitting the semicolon will initialize the local variable&#146;s values to values popped from the stack. Make sure the stack has enough values in it before proceeding. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Setting local variables:</U></B></FONT><FONT COLOR="#DD0000"><BR> </FONT><BR> The word &#147;-&gt;&#148; (hyphen greater-than) is used to set the values of local variables. <BR> <BR> <FONT COLOR="#003399"><B>Example 2</B></FONT><BR> <BR> <pre> : myword { ; cat dog } 4 -> cat 5 -> dog ; </pre> <BR> <BR> In the above example, the numbers are each pushed into the stack first. Then the -&gt; word pops a value out of the stack and sets each variable&#146;s value to a popped value. If a value is already in the stack, the following code would work as well: -&gt; cat (The 4 has been omitted).<BR> <BR> <FONT COLOR="#AA0000"><B><U>Obtaining a local variable&#146;s value</U></B></FONT><BR> <BR> To push a local variable&#146;s value onto the stack, just enter a local variable&#146;s name in a word. <BR> <BR> <FONT COLOR="#003399"><B>Example 3</B></FONT><BR> <BR> <pre> : myword { ; cat dog } 4 -> cat 5 -> dog cat \ cat's value pushed onto stack ( - cat) dog \ dog's value pushed onto stack (cat - cat dog ) + cr ." Total animals = " . cr ; </pre> <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Booting Mac OS X using OpenBIOS. </U></B></FONT><BR> <BR> The reason why OpenBIOS can&#146;t boot Mac OS X is because of missing local variable support. Maybe you can help fix this problem. <BR> <BR> </FONT> 6d70688ff605138b402a1d44681cc6e02616bde8 415 414 2010-09-25T19:55:41Z Programmingkid 15 wikitext text/x-wiki <BR> <FONT SIZE=3><FONT COLOR="#AA0000"><B><U>Contents:</U></B></FONT><BR> How to try out these code examples<BR> Declaring local variables<BR> Setting local variables<BR> Obtaining local variables&#146; values<BR> Booting Mac OS X in OpenBIOS<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>How to try out these code examples</U></B></FONT><BR> <BR> The following example code may be entered and ran in Apple&#146;s Open Firmware. In order to access Open Firmware, just hold down Command-Option-O-F while you boot your pre-Intel Mac. PowerPC iMacs and PowerBooks, iBooks, PowerMac G3&#146;s, G4&#146;s, and G5&#146;s all have Open Firmware built-in. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Declaring local variables:</U></B></FONT><BR> <BR> Place curly braces next to the word name. The curly braces must be on the same line as the word&#146;s name. The semicolon is optional. The semicolon lets the system know that the variables following it will not be initializing their values to the values that would have been popped from the stack. <BR> <BR> <FONT COLOR="#003399"><B>Example 1</B></FONT><BR> <BR> <pre> : myword { ; cat dog } ; </pre> <BR> Omitting the semicolon will initialize the local variable&#146;s values to values popped from the stack. Make sure the stack has enough values in it before proceeding. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Setting local variables:</U></B></FONT><FONT COLOR="#DD0000"><BR> </FONT><BR> The word &#147;-&gt;&#148; (hyphen greater-than) is used to set the values of local variables. <BR> <BR> <FONT COLOR="#003399"><B>Example 2</B></FONT><BR> <BR> <pre> : myword { ; cat dog } 4 -> cat 5 -> dog ; </pre> <BR> In the above example, the numbers are each pushed into the stack first. Then the -&gt; word pops a value out of the stack and sets each variable&#146;s value to a popped value. If a value is already in the stack, the following code would work as well: -&gt; cat (The 4 has been omitted).<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Obtaining a local variable&#146;s value</U></B></FONT><BR> <BR> To push a local variable&#146;s value onto the stack, just enter a local variable&#146;s name in a word. <BR> <BR> <FONT COLOR="#003399"><B>Example 3</B></FONT><BR> <BR> <pre> : myword { ; cat dog } 4 -> cat 5 -> dog cat \ cat's value pushed onto stack ( - cat) dog \ dog's value pushed onto stack (cat - cat dog ) + cr ." Total animals = " . cr ; </pre> <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Booting Mac OS X using OpenBIOS. </U></B></FONT><BR> <BR> The reason why OpenBIOS can&#146;t boot Mac OS X is because of missing local variable support. Maybe you can help fix this problem. <BR> <BR> </FONT> 071a138222467c1229ca1a26de35558efcee51cc Building OFW to Run Under BIOS 0 47 418 2011-03-18T22:00:29Z Wmb 5 moved [[Building OFW to Run Under BIOS]] to [[Building OFW to Load from BIOS]]: New title is more accurate wikitext text/x-wiki #REDIRECT [[Building OFW to Load from BIOS]] 7ffd9bb8c732258c3cb891ef9747af03eb64873b Building OFW for QEMU 0 41 398 397 2011-03-18T22:05:47Z Wmb 5 page rename wikitext text/x-wiki This page tells how to build the x86 version of Open Firmware to run under the QEMU emulator. In this version, OFW replaces QEMU's normal "bios.bin" file, so QEMU boots directly into OFW, without a conventional BIOS. This version supports most of QEMU's I/O capabilities, illustrating some of the things that OFW can do. See the [[#QEMU Options / Things to Try]] section. The OFW tree contains a version of the platform-specific "early startup" code that is suitable for initializing QEMU's virtual hardware. The early-startup code for QEMU is as simple as such code can possibly be, because the QEMU core system "hardware" requires no initialization. On real hardware, you must turn on PLLs, configure bus bridges and superIO chips, detect DRAM characteristics and configure memory controllers, and do other complex chipset-dependent things in the early stages of startup. QEMU omits all that "magic" stuff that is outside of generic x86 programming models, so the only system-specific early startup code for QEMU is a simple memory sizing loop. In addition to this "direct" version, there are two other ways to run OFW under QEMU: * You can build OFW as "payload" for Coreboot, so Core boot does the early-startup stuff - see [[OFW as a Coreboot Payload]]. * You can boot OFW from a conventional BIOS - see [[Building OFW to Load from BIOS]] === Software Requirements === * qemu-0.9.1 * Open Firmware rev. >= 1051 * GCC and GNU make - OFW builds with most versions === Getting QEMU === Get QEMU >= 0.9.1 from http://bellard.org/qemu/download.html === Building Open Firmware === Get the Open Firmware source: svn co svn://openfirmware.info/openfirmware Build OFW: cd openfirmware/cpu/x86/pc/emu/build make After make is finished (it shouldn't take long) there should be a file "emuofw.rom" in the build directory. Copy this to your qemu directory. === Run Your ROM Image === qemu -L . -bios emuofw.rom -hda fat:. That is the basic invocation; you should get a console window with OFW running in it. OFW is using the emulated Cirrus graphics display in linear framebuffer mode, not in VGA mode. === QEMU Options / Things to Try === QEMU has lots of options that let you do all sorts of fun things. The following sections illustrate a few of OFW's I/O capabilities. ==== Memory Size ==== If you look in OFW's startup banner, you should see "128 MiB memory installed". That is QEMU's default memory size. You can change that by adding "-m NNN" to the qemu command line, for example: qemu -L . -bios emuofw.rom -hda fat:. -m 32 OFW as configured will work with power-of-two size between 32 and 2048 MiB (although my QEMU installation only works up to 1024 MB). Those limits aren't inherent inheret OFW, but rather artifacts of the way this particular "port" is configured. ==== Hard Disk Images ==== The command line argument "-hda fat:." as shown above makes the current directory on the host system appear to OFW as an IDE hard disk with a read-only FAT filesystem. You can inspect it with: ok .partitions c ok dir c:\ The device name "c" is a devalias. You can see the actual device name with: ok devalias c ok devalias Instead of that "virtual FAT filesystem", you can make use Linux tools to make a filesystem image. In this example, we'll create a 10 MByte image with a single partition and an ext2 filesystem: $ dd if=/dev/zero of=filesystem.img bs=1M count=10 $ /sbin/mke2fs -F filesystem.img $ dd if=filesystem.img of=fs.img bs=512 seek=1 $ rm filesystem.img $ /sbin/sfdisk -L -uS -C 10 -H 64 -S 32 fs.img <<EOF ,,L,* ; ; ; EOF $ mkdir mnt $ sudo mount -o loop,offset=512 fs.img mnt $ # Now copy some files to "mnt" $ sudo umount mnt $ qemu -L . -bios emuofw.rom -hda fs.img In the QEMU OFW console window: ok dir c:\ In the recipe above, the total size (10 MiB) appears on the first "dd" line (count=10) and on the "sfdisk" line (-C 10). The sfdisk values for heads (-H 64) and sectors (-S 32) are set so that the cylinder size is 1MiB (64*32*512), making it easy to set the overall size with the cylinders (-C) argument. It is more common to use the maximum values -H 255 -S 63 in order to maximize the possible overall size, but that results in a cylinder size of just under 8M, which isn't quite as easy to work with for this example. The recipe uses two "dd" lines instead of making the image file in one step because the "mke2fs" command doesn't give you the option of skipping the first sector where the partition map has to be located. ==== Serial Console ==== You can tell QEMU to emulate a serial port by adding "-serial NAME" to the command line, as with: $ qemu -L . -bios emuofw.rom -hda fat:. -serial `tty` Then you can tell OFW to use the serial console with: ok com1 io QEMU has lots of options for directing the emulated serial port to various places, including real serial ports on the host system and network connections to other machines. Read the [http://bellard.org/qemu/qemu-doc.html QEMU documentation] (-serial option) for more information. You can configure OFW to use the serial port by default, instead of the graphics screen and emulated PC keyboard. To do so, uncomment the line "create serial-console" in openfirmware/cpu/x86/emu/config.fth and re-execute the "make" command. Serial consoles are convenient because it's usually easy to cut-and-paste Forth code into the window that is acting as the "terminal emulator" for the serial console; you can't paste into QEMU's graphical console. ==== Networking ==== OFW has an extensive network stack, supporting many protocols including TFTP, NFS, HTTP (client and server), and Telnet (client and server). Here's an example qemu command line with networking support enabled: $ qemu -L . -bios emuofw.rom -hda fat:. -net nic,model=pcnet -net tap Consult the [http://bellard.org/qemu/qemu-doc.html QEMU documentation] (the "-net" option) to learn how to configure the "tap" interface to connect through to the real network. Here are some OFW networking commands that you might want to try: ok watch-net ok debug-net ok ping yahoo.com ok undebug-net ok ping firmworks.com ok more http:\\firmworks.com\hello.fth ok fload http:\\firmworks.com\hello.fth ok telnetd telnet://10.20.0.107 Now start a telnet client on some machine, connecting to the IP address shown. Quitting the telnet client restores the OFW prompt to the QEMU console. ok telnet 10.20.0.5 Instead of "10.20.0.5", use the hostname or IP address of a telnet server. To exit, type Ctrl-] . ok httpd http://10.20.0.107 Browse to the URL shown. Type any key on the QEMU console to exit the HTTP server. In addition to static pages, the HTTP server can do server-side scripting with Forth, and of course you do client-side scripting by serving up Javascript or Java pages. This facility has been used for an interactive embedded system with a Web interface programmed entirely in Open Firmware - a multi-headed high-speed camera for real-time analysis of golf clubs and golf swings. OFW also supports IPV6 networking, but it's not compiled into this version. You can, of course, boot operating systems over the network, using TFTP, NFS, or HTTP. ==== Graphics ==== OFW uses the display in linear framebuffer mode, so it can display 2D graphics. To see a simple demo: ok fload http:\\firmworks.com\testrect.fth To clear the screen afterwards: ok page OFW has a graphical menu system that is not enabled in this configuration. You can navigate it with either the mouse or the keyboard. OFW can display .BMP files. ==== USB ==== To make QEMU emulate a USB mass storage device, do this: $ qemu -L . -bios emuofw.rom -hda fat:. -usbdevice disk:fat:. Then, in OFW: ok probe-usb ok dir u:\ "p2" is an alias for "probe-usb" for us lazy people. Since OFW tries not to do stuff "behind your back", if you plug in a new USB device, you must tell OFW to rescan the USB bus. In this case, it will have already scanned the device (it does that automatically at startup), but rescanning is a convenient way to get OFW to show you what is there. You could instead say: ok show-devs usb but "p2" is easier to type. In the qemu command, you could attach a writable disk image with, for example: $ qemu -L . -bios emuofw.rom -hda fat:. -usbdevice disk:fs.img assuming that you have created a suitable fs.img file as per the instructions above. You can't use the same writable image for both -hda and -usbdevice, but it's okay to use the same read-only image (as with the fat:<directory> syntax) for both. OFW has reasonably good support for a wide selection of USB mass storage devices - flash keys, disks, CDROMs, multi-card readers, etc. OFW also supports USB keyboards, but I haven't yet figured out how to make that work under QEMU. OFW supports some USB 2.0 network interfaces and some USB-to-serial adapters. You might be able to make those work using QEMU's ability to connect to real USB devices on the host. On real hardware, OFW supports UHCI (USB 1.1), OHCI (USB 1.1), and EHCI (USB 2.0) host controllers. ==== Sound ==== To enable sound support in QEMU, do this: $ qemu -L . -bios emuofw.rom -hda fat:. -soundhw sb In OFW: ok select /sound ok d# 200 d# 2000 tone ok unselect That plays a 200 Hz sine wave for 2 seconds (2000 mS). OFW can also play .wav files, but that's not included in this configuration. QEMU has a lot of options to control the sound emulation; read the documentation to get totally confused. OFW's SoundBlaster driver, as included in this configuration, is rather rudimentary. OFW has better drivers for the more common AC97 sound hardware. __NOEDITSECTION__ 3d1f9b5e8bf870b01b23f868e6001d48fc15f89d How Local Variables in Forth Work --- Using Apple’s Open Firmware Implementation 0 46 416 415 2012-09-08T19:17:13Z Programmingkid 15 wikitext text/x-wiki <FONT SIZE=4><FONT COLOR="#AA0000"><B><U>Contents:</U></B></FONT><BR> How to try out these code examples<BR> Declaring local variables<BR> Setting local variables<BR> Setting a local variables&#146; value automatically<BR> Obtaining local variables&#146; values<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>How to try out these code examples</U></B></FONT><BR> <BR> The following example code may be entered and ran in Apple&#146;s Open Firmware. In order to access Open Firmware, just hold down Command-Option-O-F while you boot your pre-Intel Mac. PowerPC iMacs and PowerBooks, iBooks, PowerMac G3&#146;s, G4&#146;s, and G5&#146;s all have Open Firmware built-in. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Declaring local variables:</U></B></FONT><BR> <BR> Place curly braces next to the word name. The curly braces must be on the same line as the word&#146;s name. The semicolon is optional. The semicolon lets the system know that the variables following it will not be initializing their values to the values that would have been popped from the stack. <BR> <BR> <FONT COLOR="#003399"><B>Example 1</B></FONT><BR> <BR> <pre> : myword { ; cat dog } ; </pre> <BR> Omitting the semicolon will initialize the local variable&#146;s values to values popped from the stack. Make sure the stack has enough values in it before proceeding. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Setting local variables:</U></B></FONT><FONT COLOR="#DD0000"><BR> </FONT><BR> The word &#147;-&gt;&#148; (hyphen greater-than) is used to set the values of local variables. <BR> <BR> <FONT COLOR="#003399"><B>Example 2</B></FONT><BR> <BR> <pre> : myword { ; cat dog } 4 -&gt; cat 5 -&gt; dog ; </pre> <BR> In the above example, the numbers are each pushed into the stack first. Then the -&gt; word pops a value out of the stack and sets each variable&#146;s value to a popped value. If a value is already in the stack, the following code would work as well: -&gt; cat (The 4 has been omitted).<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Setting a local variable&#146;s value automatically</U></B></FONT><BR> <BR> When you don&#146;t use the semicolon in the local variable declaration, the variables get their value from the stack. The order is the last variable declared is set to the last value pushed on the stack. <BR> <BR> <FONT COLOR="#003399"><B>Example 3</B></FONT><BR> <BR> stack before myword is called<BR> <BR> 3 &lt;---- top of stack<BR> 2<BR> 1<BR> <BR> <pre> : myword { one two three } cr ." one = " one . cr ." two = " two . cr ." three = " three . ; </pre> <BR> after myword is called ...<BR> <BR> one = 1<BR> two = 2<BR> three = 3<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Obtaining a local variable&#146;s value</U></B></FONT><BR> <BR> To push a local variable&#146;s value onto the stack, just enter a local variable&#146;s name in a word. <BR> <BR> <FONT COLOR="#003399"><B>Example 4</B></FONT><BR> <BR> <pre> : myword { ; cat dog } 4 -> cat 5 -> dog cat \ cat's value pushed onto stack ( - cat) dog \ dog's value pushed onto stack (cat - cat dog ) + cr ." Total animals = " . cr ; </pre> <BR> <BR> </FONT> 6980fe800757092a2b018a157329028dd1c0fe29 417 416 2012-09-08T19:18:16Z Programmingkid 15 wikitext text/x-wiki <FONT SIZE=4><FONT COLOR="#AA0000"><B><U>Contents:</U></B></FONT><BR> How to try out these code examples<BR> Declaring local variables<BR> Setting local variables<BR> Setting a local variables&#146; value automatically<BR> Obtaining local variables&#146; values<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>How to try out these code examples</U></B></FONT><BR> <BR> The following example code may be entered and ran in Apple&#146;s Open Firmware. In order to access Open Firmware, just hold down Command-Option-O-F while you boot your pre-Intel Mac. PowerPC iMacs and PowerBooks, iBooks, PowerMac G3&#146;s, G4&#146;s, and G5&#146;s all have Open Firmware built-in. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Declaring local variables:</U></B></FONT><BR> <BR> Place curly braces next to the word name. The curly braces must be on the same line as the word&#146;s name. The semicolon is optional. The semicolon lets the system know that the variables following it will not be initializing their values to the values that would have been popped from the stack. <BR> <BR> <FONT COLOR="#003399"><B>Example 1</B></FONT><BR> <BR> <pre> : myword { ; cat dog } ; </pre> <BR> Omitting the semicolon will initialize the local variable&#146;s values to values popped from the stack. Make sure the stack has enough values in it before proceeding. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Setting local variables:</U></B></FONT><FONT COLOR="#DD0000"><BR> </FONT><BR> The word &#147;-&gt;&#148; (hyphen greater-than) is used to set the values of local variables. <BR> <BR> <FONT COLOR="#003399"><B>Example 2</B></FONT><BR> <BR> <pre> : myword { ; cat dog } 4 -&gt; cat 5 -&gt; dog ; </pre> <BR> In the above example, the numbers are each pushed into the stack first. Then the -&gt; word pops a value out of the stack and sets each variable&#146;s value to a popped value. If a value is already in the stack, the following code would work as well: -&gt; cat (The 4 has been omitted).<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Setting a local variable&#146;s value automatically</U></B></FONT><BR> <BR> When you don&#146;t use the semicolon in the local variable declaration, the variables get their value from the stack. The order is the last variable declared is set to the last value pushed on the stack. <BR> <BR> <FONT COLOR="#003399"><B>Example 3</B></FONT><BR> <BR> stack before myword is called ...<BR> <BR> 3 &lt;---- top of stack<BR> 2<BR> 1<BR> <BR> <pre> : myword { one two three } cr ." one = " one . cr ." two = " two . cr ." three = " three . ; </pre> <BR> after myword is called ...<BR> <BR> one = 1<BR> two = 2<BR> three = 3<BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Obtaining a local variable&#146;s value</U></B></FONT><BR> <BR> To push a local variable&#146;s value onto the stack, just enter a local variable&#146;s name in a word. <BR> <BR> <FONT COLOR="#003399"><B>Example 4</B></FONT><BR> <BR> <pre> : myword { ; cat dog } 4 -> cat 5 -> dog cat \ cat's value pushed onto stack ( - cat) dog \ dog's value pushed onto stack (cat - cat dog ) + cr ." Total animals = " . cr ; </pre> <BR> <BR> </FONT> 2a508836ab6b10a6557f074d3a5761779dfa4db7 How to build OpenBIOS on Mac OS X 0 48 419 2012-12-17T18:28:45Z Programmingkid 15 Created page with "<!--This file created by AppleWorks HTML Filter 6.0--> <HTML> <HEAD> <META NAME=GENERATOR CONTENT="AppleWorks HTML Filter 6.0"> <META HTTP-EQUIV="Content-Type" CONTENT="text/h..." wikitext text/x-wiki <!--This file created by AppleWorks HTML Filter 6.0--> <HTML> <HEAD> <META NAME=GENERATOR CONTENT="AppleWorks HTML Filter 6.0"> <META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=macintosh"> <TITLE>Building OpenBIOS on OS X.cwk</TITLE> </HEAD> <BODY > <P ALIGN=CENTER><FONT SIZE=5><B>How to build OpenBIOS on Mac OS X<BR> </B></FONT><BR> </P> <P><BR> Apple&#146;s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> Disclaimer: You assume all risk involved when following this tutorial. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: <A HREF="http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2"><FONT COLOR="#0000DD"><U>http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2</A></U></FONT><BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the &#147;AWOS Cross-Compiler for OS X&#148; file on the newly mounted disk.<BR> <BR> 6) Select the &#147;PowerPC Support&#148; check box only when given the option.<BR> <IMG SRC="Building OpenBIOS on OS X.1.jpg"><BR> <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler&#146;s folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. <BR> <BR> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell&#146;s documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR> <BR> Part 2: Required changes to OpenBIOS source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Copy this patch and place it into a file. Call the file mac.patch.<BR> <BR> <FONT COLOR="#008800"># start of patch</FONT><BR> <BR> Index: config/scripts/switch-arch<BR> ===================================================================<BR> --- config/scripts/switch-arch (revision 1080)<BR> +++ config/scripts/switch-arch (working copy)<BR> @@ -89,16 +89,27 @@<BR> <BR> archname()<BR> {<BR> - HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \<BR> - -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \<BR> - -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \<BR> - -e &quot;s/Power Macintosh/ppc/&quot;`<BR> + OS_NAME=`uname`<BR> + if test &quot;$OS_NAME&quot; = &quot;Darwin&quot;; then # Can't depend on uname -m on Mac OS X<BR> + IS_64BIT=`sysctl hw.cpu64bit_capable`<BR> + if test &quot;$IS_64BIT&quot; = &quot;hw.cpu64bit_capable: 1&quot;; then<BR> + HOSTARCH=&quot;amd64&quot;<BR> + else<BR> + HOSTARCH=&quot;x86&quot;<BR> + fi<BR> + else<BR> + HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \<BR> + -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \<BR> + -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \<BR> + -e &quot;s/Power Macintosh/ppc/&quot;`<BR> + fi<BR> }<BR> <BR> select_prefix()<BR> {<BR> - for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi-<BR> + for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf-<BR> do<BR> + echo &quot;Trying ${TARGET}gcc&quot;<BR> if type ${TARGET}gcc &gt; /dev/null 2&gt;&amp;1<BR> then<BR> return<BR> <BR> <BR> <FONT COLOR="#770000"># end of patch</FONT><BR> <BR> <BR> 4) Apply the patch to your OpenBIOS source code using the patch command. <BR> Example: patch -p0 &lt; ~/Desktop/mac.patch<BR> <BR> If everything went to plan, you would see something like this: patching file config/scripts/switch-arch.<BR> <BR> If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn&#146;t help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR> <BR> <BR> That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose.<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> <BR> <BR> This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> </BODY> </HTML> ff5c8b35da9c9835e4d5eac848c00e3b32214a29 420 419 2012-12-17T18:33:27Z Programmingkid 15 wikitext text/x-wiki <P ALIGN=CENTER><FONT SIZE=5><B>How to build OpenBIOS on Mac OS X<BR> </B></FONT><BR> </P> <P><BR> Apple&#146;s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> Disclaimer: You assume all risk involved when following this tutorial. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: <A HREF="http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2"><FONT COLOR="#0000DD"><U>http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2</A></U></FONT><BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the &#147;AWOS Cross-Compiler for OS X&#148; file on the newly mounted disk.<BR> <BR> 6) Select the &#147;PowerPC Support&#148; check box only when given the option.<BR> <IMG SRC="Building OpenBIOS on OS X.1.jpg"><BR> <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler&#146;s folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. <BR> <BR> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell&#146;s documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR> <BR> Part 2: Required changes to OpenBIOS source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Copy this patch and place it into a file. Call the file mac.patch.<BR> <BR> <FONT COLOR="#008800"># start of patch</FONT><BR> <BR> Index: config/scripts/switch-arch<BR> ===================================================================<BR> --- config/scripts/switch-arch (revision 1080)<BR> +++ config/scripts/switch-arch (working copy)<BR> @@ -89,16 +89,27 @@<BR> <BR> archname()<BR> {<BR> - HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \<BR> - -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \<BR> - -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \<BR> - -e &quot;s/Power Macintosh/ppc/&quot;`<BR> + OS_NAME=`uname`<BR> + if test &quot;$OS_NAME&quot; = &quot;Darwin&quot;; then # Can't depend on uname -m on Mac OS X<BR> + IS_64BIT=`sysctl hw.cpu64bit_capable`<BR> + if test &quot;$IS_64BIT&quot; = &quot;hw.cpu64bit_capable: 1&quot;; then<BR> + HOSTARCH=&quot;amd64&quot;<BR> + else<BR> + HOSTARCH=&quot;x86&quot;<BR> + fi<BR> + else<BR> + HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \<BR> + -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \<BR> + -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \<BR> + -e &quot;s/Power Macintosh/ppc/&quot;`<BR> + fi<BR> }<BR> <BR> select_prefix()<BR> {<BR> - for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi-<BR> + for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf-<BR> do<BR> + echo &quot;Trying ${TARGET}gcc&quot;<BR> if type ${TARGET}gcc &gt; /dev/null 2&gt;&amp;1<BR> then<BR> return<BR> <BR> <BR> <FONT COLOR="#770000"># end of patch</FONT><BR> <BR> <BR> 4) Apply the patch to your OpenBIOS source code using the patch command. <BR> Example: patch -p0 &lt; ~/Desktop/mac.patch<BR> <BR> If everything went to plan, you would see something like this: patching file config/scripts/switch-arch.<BR> <BR> If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn&#146;t help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR> <BR> <BR> That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose.<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> <BR> <BR> This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 3ce7995e82ad436c3e79afccbef77d7625031de1 421 420 2012-12-17T18:53:03Z Programmingkid 15 wikitext text/x-wiki <P ALIGN=CENTER><FONT SIZE=5><B>How to build OpenBIOS on Mac OS X<BR> </B></FONT><BR> </P> <P><BR> Apple&#146;s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> Disclaimer: You assume all risk involved when following this tutorial. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the &#147;AWOS Cross-Compiler for OS X&#148; file on the newly mounted disk.<BR> <BR> 6) Select the &#147;PowerPC Support&#148; check box only when given the option.<BR> <IMG SRC="Building OpenBIOS on OS X.1.jpg"><BR> <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler&#146;s folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. <BR> <BR> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell&#146;s documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR> <BR> Part 2: Required changes to OpenBIOS source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Copy this patch and place it into a file. Call the file mac.patch.<BR> <BR> <pre> Index: config/scripts/switch-arch =================================================================== --- config/scripts/switch-arch (revision 1080) +++ config/scripts/switch-arch (working copy) @@ -89,16 +89,27 @@ archname() { - HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ - -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ - -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ - -e "s/Power Macintosh/ppc/"` + OS_NAME=`uname` + if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X + IS_64BIT=`sysctl hw.cpu64bit_capable` + if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then + HOSTARCH="amd64" + else + HOSTARCH="x86" + fi + else + HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ + -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ + -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ + -e "s/Power Macintosh/ppc/"` + fi } select_prefix() { - for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- + for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf- do + echo "Trying ${TARGET}gcc" if type ${TARGET}gcc > /dev/null 2>&1 then return </pre> <BR> 4) Apply the patch to your OpenBIOS source code using the patch command. <BR> Example: patch -p0 &lt; ~/Desktop/mac.patch<BR> <BR> If everything went to plan, you would see something like this: patching file config/scripts/switch-arch.<BR> <BR> If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn&#146;t help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR> <BR> <BR> That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose.<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> <BR> <BR> This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> bc0380b52a2712da249b280dddb669cac82f2b5d 422 421 2012-12-17T18:59:12Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple&#146;s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> Disclaimer: You assume all risk involved when following this tutorial. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the &#147;AWOS Cross-Compiler for OS X&#148; file on the newly mounted disk.<BR> <BR> 6) Select the &#147;PowerPC Support&#148; check box only when given the option.<BR> <IMG SRC="Building OpenBIOS on OS X.1.jpg"><BR> <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler&#146;s folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. <BR> <BR> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell&#146;s documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR> <BR> Part 2: Required changes to OpenBIOS source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Copy this patch and place it into a file. Call the file mac.patch.<BR> <BR> <pre> Index: config/scripts/switch-arch =================================================================== --- config/scripts/switch-arch (revision 1080) +++ config/scripts/switch-arch (working copy) @@ -89,16 +89,27 @@ archname() { - HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ - -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ - -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ - -e "s/Power Macintosh/ppc/"` + OS_NAME=`uname` + if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X + IS_64BIT=`sysctl hw.cpu64bit_capable` + if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then + HOSTARCH="amd64" + else + HOSTARCH="x86" + fi + else + HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ + -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ + -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ + -e "s/Power Macintosh/ppc/"` + fi } select_prefix() { - for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- + for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf- do + echo "Trying ${TARGET}gcc" if type ${TARGET}gcc > /dev/null 2>&1 then return </pre> <BR> 4) Apply the patch to your OpenBIOS source code using the patch command. <BR> Example: patch -p0 &lt; ~/Desktop/mac.patch<BR> <BR> If everything went to plan, you would see something like this: patching file config/scripts/switch-arch.<BR> <BR> If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn&#146;t help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR> <BR> <BR> That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose.<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> <BR> <BR> This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 288990fdc48546722466f64a707198f252c010cb 423 422 2012-12-17T19:08:18Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple&#146;s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> Disclaimer: You assume all risk involved when following this tutorial. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the &#147;AWOS Cross-Compiler for OS X&#148; file on the newly mounted disk.<BR> <BR> 6) Select the &#147;PowerPC Support&#148; check box only when given the option. <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler&#146;s folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. <BR> <BR> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell&#146;s documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR> <BR> Part 2: Required changes to OpenBIOS source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Copy this patch and place it into a file. Call the file mac.patch.<BR> <BR> <pre> Index: config/scripts/switch-arch =================================================================== --- config/scripts/switch-arch (revision 1080) +++ config/scripts/switch-arch (working copy) @@ -89,16 +89,27 @@ archname() { - HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ - -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ - -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ - -e "s/Power Macintosh/ppc/"` + OS_NAME=`uname` + if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X + IS_64BIT=`sysctl hw.cpu64bit_capable` + if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then + HOSTARCH="amd64" + else + HOSTARCH="x86" + fi + else + HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ + -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ + -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ + -e "s/Power Macintosh/ppc/"` + fi } select_prefix() { - for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- + for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf- do + echo "Trying ${TARGET}gcc" if type ${TARGET}gcc > /dev/null 2>&1 then return </pre> <BR> 4) Apply the patch to your OpenBIOS source code using the patch command. <BR> Example: patch -p0 &lt; ~/Desktop/mac.patch<BR> :If everything went to plan, you would see something like this: patching file config/scripts/switch-arch. :If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn't help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR> <BR> <BR> That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose.<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> <BR> <BR> This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 167f00cb416357c39b2a21a4476734892e93d749 424 423 2012-12-17T19:10:00Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple&#146;s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> Disclaimer: You assume all risk involved when following this tutorial. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the &#147;AWOS Cross-Compiler for OS X&#148; file on the newly mounted disk.<BR> <BR> 6) Select the &#147;PowerPC Support&#148; check box only when given the option. <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR> <BR> Part 2: Required changes to OpenBIOS source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Copy this patch and place it into a file. Call the file mac.patch.<BR> <BR> <pre> Index: config/scripts/switch-arch =================================================================== --- config/scripts/switch-arch (revision 1080) +++ config/scripts/switch-arch (working copy) @@ -89,16 +89,27 @@ archname() { - HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ - -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ - -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ - -e "s/Power Macintosh/ppc/"` + OS_NAME=`uname` + if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X + IS_64BIT=`sysctl hw.cpu64bit_capable` + if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then + HOSTARCH="amd64" + else + HOSTARCH="x86" + fi + else + HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ + -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ + -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ + -e "s/Power Macintosh/ppc/"` + fi } select_prefix() { - for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- + for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf- do + echo "Trying ${TARGET}gcc" if type ${TARGET}gcc > /dev/null 2>&1 then return </pre> <BR> 4) Apply the patch to your OpenBIOS source code using the patch command. <BR> Example: patch -p0 &lt; ~/Desktop/mac.patch<BR> :If everything went to plan, you would see something like this: patching file config/scripts/switch-arch. :If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn't help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR> <BR> <BR> That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose.<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> <BR> <BR> This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 777f77bebb3065e414468c16351f9618afaea878 425 424 2012-12-18T16:13:32Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple&#146;s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> Disclaimer: You assume all risk involved when following this tutorial. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the &#147;AWOS Cross-Compiler for OS X&#148; file on the newly mounted disk.<BR> <BR> 6) Select the &#147;PowerPC Support&#148; check box only when given the option. <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR> <BR> Part 2: Required changes to OpenBIOS source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Copy this patch and place it into a file. Call the file mac.patch.<BR> <BR> <pre> Index: config/scripts/switch-arch =================================================================== --- config/scripts/switch-arch (revision 1080) +++ config/scripts/switch-arch (working copy) @@ -89,16 +89,27 @@ archname() { - HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ - -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ - -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ - -e "s/Power Macintosh/ppc/"` + OS_NAME=`uname` + if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X + IS_64BIT=`sysctl hw.cpu64bit_capable` + if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then + HOSTARCH="amd64" + else + HOSTARCH="x86" + fi + else + HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ + -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ + -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ + -e "s/Power Macintosh/ppc/"` + fi } select_prefix() { - for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- + for TARGET in ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf- do + echo "Trying ${TARGET}gcc" if type ${TARGET}gcc > /dev/null 2>&1 then return </pre> <BR> 4) Apply the patch to your OpenBIOS source code using the patch command. <BR> Example: patch -p0 &lt; ~/Desktop/mac.patch<BR> :If everything went to plan, you would see something like this: patching file config/scripts/switch-arch. :If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn't help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR> <BR> <BR> That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> <BR> <BR> This tutorial was made using information available on 12/17/12. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 8c9cebb41158ecc671e8b38cf26b557ba161695a 426 425 2013-04-19T00:53:39Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple&#146;s supplied GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> Disclaimer: You assume all risk involved when following this tutorial. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the &#147;AWOS Cross-Compiler for OS X&#148; file on the newly mounted disk.<BR> <BR> 6) Select the &#147;PowerPC Support&#148; check box only when given the option. <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> Next the switch-arch configuration script needs to be altered so it can work on Mac OS X. <FONT COLOR="#BB0000"><B><U><BR> <BR> Part 2: Required changes to OpenBIOS source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Copy this patch and place it into a file. Call the file mac.patch.<BR> <BR> <pre> Index: config/scripts/switch-arch =================================================================== --- config/scripts/switch-arch (revision 1117) +++ config/scripts/switch-arch (working copy) @@ -89,16 +89,27 @@ archname() { - HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ - -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ - -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ - -e "s/Power Macintosh/ppc/"` + OS_NAME=`uname` + if test "$OS_NAME" = "Darwin"; then # Can't depend on uname -m on Mac OS X + IS_64BIT=`sysctl hw.cpu64bit_capable` + if test "$IS_64BIT" = "hw.cpu64bit_capable: 1"; then + HOSTARCH="amd64" + else + HOSTARCH="x86" + fi + else + HOSTARCH=`uname -m | sed -e s/i.86/x86/ -e s/i86pc/x86/ \ + -e s/sun4u/sparc64/ -e s/sparc$/sparc32/ \ + -e s/arm.*/arm/ -e s/sa110/arm/ -e s/x86_64/amd64/ \ + -e "s/Power Macintosh/ppc/"` + fi } select_prefix() { - for TARGET in ${1}-unknown-linux-gnu- ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- + for TARGET in ${1}-unknown-linux-gnu- ${1}-linux-gnu- ${1}-linux- ${1}-elf- ${1}-eabi- ppc-elf- do + echo "Trying ${TARGET}gcc" if type ${TARGET}gcc > /dev/null 2>&1 then return </pre> <BR> 4) Apply the patch to your OpenBIOS source code using the patch command. <BR> Example: patch -p0 &lt; ~/Desktop/mac.patch<BR> :If everything went to plan, you would see something like this: patching file config/scripts/switch-arch. :If an error message was displayed instead, try changing the p0 argument to p1 or p2. If this doesn't help, verify you are in the openbios-devel directory. If you are still stuck, applying this patch by hand is an option.<BR> <BR> <BR> That is all the changes that are needed. By this point, you should be able to configure and build OpenBIOS. Just type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> <BR> <BR> This tutorial was made using information available on 4/18/13. It is possible things have changed since that time. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 276f05beb5adcc9e0f76b26d8d8295c15de636b7 433 426 2017-12-21T23:39:18Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" check box only when given the option. <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 772603349e4bb0036bfa94c18c5e6e1b6dc42363 434 433 2017-12-21T23:41:43Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option. [[File:Installer.[ng]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> d10c708f39b998517b846a728440d146d3634106 435 434 2017-12-21T23:42:07Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option. [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 86c9040e46474ca9c5118981af77b6f9232c2433 437 435 2017-12-21T23:49:08Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> 4) Type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> e3e9ec11353b07a77ee8332dbce9594d66f8ab90 439 437 2017-12-21T23:50:53Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> ./config/scripts/switch-arch cross-pcc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 39c6da2554001128acf005c913e577ac4bac7876 440 439 2017-12-21T23:59:10Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell: export PATH=:/usr/local/ppcelfgcc/bin. :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 3748c66032c47378db08249d18aaec65d213f1da 441 440 2017-12-22T00:02:41Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=:/usr/local/ppcelfgcc/bin export PATH=:/usr/local/i386elf/bin :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> c2cf23b5408eb74c34288889fa46d522b2a6579d 442 441 2017-12-22T00:03:05Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=:/usr/local/ppcelfgcc/bin export PATH=:/usr/local/i386elf/bin<br> :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> e0a08fe4134cdcba9da5d352ffbce9032a0c3886 443 442 2017-12-22T00:03:34Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=:/usr/local/ppcelfgcc/bin<br> export PATH=:/usr/local/i386elf/bin<br> :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 1d0591aa0b2e2282db7ccbc1579fefc7d775ad99 444 443 2017-12-22T00:05:38Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=:/usr/local/ppcelfgcc/bin<br> export PATH=:/usr/local/i386elf/i386elf/bin<br> :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> b35145da26f6ea7c996c6f94ea69bba0a5d8dc91 445 444 2017-12-22T00:09:59Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=PATH:/usr/local/ppcelfgcc/bin<br> export PATH=PATH:/usr/local/i386elf/i386elf/bin<br> :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bashrc file for the Bash shell. Check your shell's documentation for more information. <BR> <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> fc83fccece80a2374c41796d24a44af3fad47f75 446 445 2017-12-22T00:11:28Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=PATH:/usr/local/ppcelfgcc/bin<br> export PATH=PATH:/usr/local/i386elf/i386elf/bin<br> :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br> To open this file use these commands:<br> cd ~<br> open .bash_profile<br> <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 7fb1000a0ad059ee6325c35033f19f287d88d158 447 446 2017-12-22T00:12:23Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=PATH:/usr/local/ppcelfgcc/bin<br> export PATH=PATH:/usr/local/i386elf/i386elf/bin<br> :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br> To open this file use these commands:<br> cd ~<br> open .bash_profile<br> Then simply paste the export commands in this file. Save changes when you are done. <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> e86be87e01007a5a70acc1b503544609cf2ddf27 448 447 2017-12-22T00:16:18Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=$PATH:/usr/local/ppcelfgcc/bin<br> export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br> :Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br> To open this file use these commands:<br> cd ~<br> open .bash_profile<br> Then simply paste the export commands in this file. Save changes when you are done. <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 9f054f4f07f38c3ec9698de7934627318935621a 449 448 2017-12-22T00:16:57Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=$PATH:/usr/local/ppcelfgcc/bin<br> export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br> To open this file use these commands:<br> cd ~<br> open .bash_profile<br> Then simply paste the export commands in this file. Save changes when you are done. <BR> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 59184b06cfb83576fc3ad334fbfc5730903c88e4 450 449 2017-12-22T00:18:58Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=$PATH:/usr/local/ppcelfgcc/bin<br> export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br> To open this file use these commands:<br> cd ~<br> open .bash_profile<br> Then simply paste the export commands in this file. Save changes when you are done. <BR> To test to see if the cross compilers work issue these commands:<br> i386-elf-gcc --version <br> ppc-elf-gcc --version <br> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 92880015e20838774a8df33541e0e3bcc4ba34a5 OpenBIOS 0 16 185 184 2013-05-04T11:21:36Z BlueSwirl 14 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. OpenBIOS v1.1 has been released. See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/Sparc32 can boot Linux, NetBSD and OpenBSD and some later versions of Solaris. OpenBIOS/PPC can boot at least Linux. OpenBIOS/Sparc64 can boot Linux with virtio drivers. [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = First, make the switch-arch script executable: $ chmod +x ./config/scripts/switch-arch Second, select the build targets: $ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64 Finally the build command: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- or $ make -C obj-ppc CC=powerpc-elf-gcc The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ a6495d9ca2fbd3b1384a5ea05ef02eb3af538981 186 185 2013-05-04T11:35:53Z BlueSwirl 14 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include: * Internal memory API (OFMEM) implementation * Forth Source Debugger * 64-bit 1275 6d5 implementation * Forth Local Variables * Internal libopenbios code reorganisation See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/SPARC32 is currently able to boot the following OS/kernels: * Linux * NetBSD * OpenBSD * Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work) OpenBIOS/SPARC64 is currently able to boot the following OS/kernels: * Linux (with virtio drivers) OpenBIOS/PPC is currently able to boot the following OS/kernels: * Linux * HelenOS The following kernels will partially boot, but still suffer from some emulation bugs under QEMU: * FreeBSD * NetBSD * Darwin/OS X [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = First, make the switch-arch script executable: $ chmod +x ./config/scripts/switch-arch Second, select the build targets: $ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64 Finally the build command: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- or $ make -C obj-ppc CC=powerpc-elf-gcc The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ 9473fc564f7cb5ca3000bb018d55f765bf902fe3 187 186 2015-04-28T19:42:59Z Programmingkid 15 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include: * Internal memory API (OFMEM) implementation * Forth Source Debugger * 64-bit 1275 6d5 implementation * Forth Local Variables * Internal libopenbios code reorganisation See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/SPARC32 is currently able to boot the following OS/kernels: * Linux * NetBSD * OpenBSD * Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work) OpenBIOS/SPARC64 is currently able to boot the following OS/kernels: * Linux (with virtio drivers) OpenBIOS/PPC is currently able to boot the following OS/kernels: * Linux * HelenOS The following kernels will partially boot, but still suffer from some emulation bugs under QEMU: * FreeBSD * NetBSD * Darwin/OS X [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = Download fcode suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel Build the needed programs inside the fcode-utils-devel folder: $ make Install the programs: $ make install Download OpenBIOS: $ svn co svn://openbios.org/openbios/trunk/openbios-devel Select the build targets: $ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64 Build OpenBIOS: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- or $ make -C obj-ppc CC=powerpc-elf-gcc The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = Troubleshooting = Seeing this message? Unable to locate toke executable from the fcode-utils package - aborting <br>- Install the fcode suite first before trying to build OpenBIOS. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ e3487d159b657bf2146a245abfb8db60484bfc20 188 187 2015-04-28T19:59:37Z Programmingkid 15 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include: * Internal memory API (OFMEM) implementation * Forth Source Debugger * 64-bit 1275 6d5 implementation * Forth Local Variables * Internal libopenbios code reorganisation See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/SPARC32 is currently able to boot the following OS/kernels: * Linux * NetBSD * OpenBSD * Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work) OpenBIOS/SPARC64 is currently able to boot the following OS/kernels: * Linux (with virtio drivers) OpenBIOS/PPC is currently able to boot the following OS/kernels: * Linux * HelenOS The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU: * FreeBSD * NetBSD * Darwin/Mac OS X [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = Download fcode suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel Build the needed programs inside the fcode-utils-devel folder: $ make Install the programs: $ make install Download OpenBIOS: $ svn co svn://openbios.org/openbios/trunk/openbios-devel Select the build targets: $ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64 Build OpenBIOS: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- or $ make -C obj-ppc CC=powerpc-elf-gcc The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = Troubleshooting = Seeing this message? Unable to locate toke executable from the fcode-utils package - aborting <br>- Install the fcode suite first before trying to build OpenBIOS. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ 58167d93c5c65cf7b2d5d8acdd18e1137b4a17e0 189 188 2015-05-14T15:39:40Z Programmingkid 15 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include: * Internal memory API (OFMEM) implementation * Forth Source Debugger * 64-bit 1275 6d5 implementation * Forth Local Variables * Internal libopenbios code reorganisation See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/SPARC32 is currently able to boot the following OS/kernels: * Linux * NetBSD * OpenBSD * Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work) OpenBIOS/SPARC64 is currently able to boot the following OS/kernels: * Linux (with virtio drivers) OpenBIOS/PPC is currently able to boot the following OS/kernels: * Linux * HelenOS The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU: * FreeBSD * NetBSD * Darwin/Mac OS X [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = Download fcode suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel Build the needed programs inside the fcode-utils-devel folder: $ make Install the programs: $ make install Download OpenBIOS: $ svn co svn://openbios.org/openbios/trunk/openbios-devel Select the build targets: $ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64 Build OpenBIOS: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- or $ make -C obj-ppc CC=powerpc-elf-gcc The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = Additional Resources = [http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2 PowerPC elf cross compiler for Mac OS X] *This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script. Example: CROSS_COMPILE=ppc-elf- ./switch-arch ppc = Notes for Building on Mac OS X = There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem. If this happens to you, try setting the HOSTARCH variable before using the switch-arch script. Example: HOSTARCH=amd64 ./switch-arch ppc = Troubleshooting = Seeing this message? Unable to locate toke executable from the fcode-utils package - aborting <br>- Install the fcode suite first before trying to build OpenBIOS. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ 3e287395e707ad443cc3acab59960290d29564d2 190 189 2015-05-14T15:45:53Z Programmingkid 15 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include: * Internal memory API (OFMEM) implementation * Forth Source Debugger * 64-bit 1275 6d5 implementation * Forth Local Variables * Internal libopenbios code reorganisation See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/SPARC32 is currently able to boot the following OS/kernels: * Linux * NetBSD * OpenBSD * Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work) OpenBIOS/SPARC64 is currently able to boot the following OS/kernels: * Linux (with virtio drivers) OpenBIOS/PPC is currently able to boot the following OS/kernels: * Linux * HelenOS The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU: * FreeBSD * NetBSD * Darwin/Mac OS X [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = Download fcode suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel Build the needed programs inside the fcode-utils-devel folder: $ make Install the programs: $ make install Download OpenBIOS: $ svn co svn://openbios.org/openbios/trunk/openbios-devel Select the build targets: $ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64 Build OpenBIOS: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- or $ make -C obj-ppc CC=powerpc-elf-gcc The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = Additional Resources = [http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2 PowerPC elf cross compiler for Mac OS X] *This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script. Example: CROSS_COMPILE=ppc-elf- ./switch-arch ppc = Notes for Building on Mac OS X = There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem. If this happens to you, try setting the HOSTARCH variable before using the switch-arch script. Example: HOSTARCH=amd64 ./switch-arch ppc = Troubleshooting = Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting'' <br>- Install the fcode suite first before trying to build OpenBIOS. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ 0680538701d864af7675669f0a1dbb45a64bff6e 191 190 2015-05-14T16:04:50Z Programmingkid 15 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include: * Internal memory API (OFMEM) implementation * Forth Source Debugger * 64-bit 1275 6d5 implementation * Forth Local Variables * Internal libopenbios code reorganisation See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/SPARC32 is currently able to boot the following OS/kernels: * Linux * NetBSD * OpenBSD * Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work) OpenBIOS/SPARC64 is currently able to boot the following OS/kernels: * Linux (with virtio drivers) OpenBIOS/PPC is currently able to boot the following OS/kernels: * Linux * HelenOS The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU: * FreeBSD * NetBSD * Darwin/Mac OS X [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = Download fcode suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel Build the needed programs inside the fcode-utils-devel folder: $ make Install the programs: $ make install Download OpenBIOS: $ svn co svn://openbios.org/openbios/trunk/openbios-devel Select the build targets: $ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64 Build OpenBIOS: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- or $ make -C obj-ppc CC=powerpc-elf-gcc The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = Additional Resources = [http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2 PowerPC elf cross compiler for Mac OS X] *This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script. Example: CROSS_COMPILE=ppc-elf- ./switch-arch ppc *As of May 2015, a problem with this compiler and the file usbohci.c causes compiling to fail. This is only because compiler warnings are being treated as errors. To disable this option, go to the Makefile.target file located at the root level of the openbios-devel folder and remove the "-Werror" text. = Notes for Building on Mac OS X = There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem. If this happens to you, try setting the HOSTARCH variable before using the switch-arch script. Example: HOSTARCH=amd64 ./switch-arch ppc = Troubleshooting = Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting'' <br>- Install the fcode suite first before trying to build OpenBIOS. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ 67277202b60fa0279d1cd6ef3333f148a3431f36 192 191 2015-05-14T16:07:55Z Programmingkid 15 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include: * Internal memory API (OFMEM) implementation * Forth Source Debugger * 64-bit 1275 6d5 implementation * Forth Local Variables * Internal libopenbios code reorganisation See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/SPARC32 is currently able to boot the following OS/kernels: * Linux * NetBSD * OpenBSD * Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work) OpenBIOS/SPARC64 is currently able to boot the following OS/kernels: * Linux (with virtio drivers) OpenBIOS/PPC is currently able to boot the following OS/kernels: * Linux * HelenOS The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU: * FreeBSD * NetBSD * Darwin/Mac OS X [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = Download fcode suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel Build the needed programs inside the fcode-utils-devel folder: $ make Install the programs: $ make install Download OpenBIOS: $ svn co svn://openbios.org/openbios/trunk/openbios-devel Select the build targets: $ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64 Build OpenBIOS: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- or $ make -C obj-ppc CC=powerpc-elf-gcc The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = Additional Resources = [http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2 PowerPC elf cross compiler for Mac OS X] *This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script. Example: CROSS_COMPILE=ppc-elf- ./switch-arch ppc *As of May 2015, a problem with this compiler and the file usbohci.c causes compiling to fail. This is only because compiler warnings are being treated as errors. To disable this option, open the Makefile.target file (located at the root level of the openbios-devel folder) and remove the "-Werror" text. = Notes for Building on Mac OS X = There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem. If this happens to you, try setting the HOSTARCH variable before using the switch-arch script. Example: HOSTARCH=amd64 ./switch-arch ppc = Troubleshooting = Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting'' <br>- Install the fcode suite first before trying to build OpenBIOS. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ d944241f9e568a44b2254f3762755218fd63edc2 193 192 2015-05-14T16:39:04Z Programmingkid 15 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include: * Internal memory API (OFMEM) implementation * Forth Source Debugger * 64-bit 1275 6d5 implementation * Forth Local Variables * Internal libopenbios code reorganisation See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/SPARC32 is currently able to boot the following OS/kernels: * Linux * NetBSD * OpenBSD * Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work) OpenBIOS/SPARC64 is currently able to boot the following OS/kernels: * Linux (with virtio drivers) OpenBIOS/PPC is currently able to boot the following OS/kernels: * Linux * HelenOS The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU: * FreeBSD * NetBSD * Darwin/Mac OS X [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = Download fcode suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel Build the needed programs inside the fcode-utils-devel folder: $ make Install the programs: $ make install Download OpenBIOS: $ svn co svn://openbios.org/openbios/trunk/openbios-devel Select the build targets: $ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64 Build OpenBIOS: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- or $ make -C obj-ppc CC=powerpc-elf-gcc The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = Additional Resources = [http://www.mediafire.com/download/wy5xgj2hwjp8k4k/AWOS_Cross-Compilers.zip PowerPC, x86, ARM, and Sparc elf cross compilers for Mac OS X ] *This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script. Example: CROSS_COMPILE=ppc-elf- ./switch-arch ppc *As of May 2015, a problem with this compiler and the file usbohci.c causes compiling to fail. This is only because compiler warnings are being treated as errors. To disable this option, open the Makefile.target file (located at the root level of the openbios-devel folder) and remove the "-Werror" text. = Notes for Building on Mac OS X = There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem. If this happens to you, try setting the HOSTARCH variable before using the switch-arch script. Example: HOSTARCH=amd64 ./switch-arch ppc = Troubleshooting = Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting'' <br>- Install the fcode suite first before trying to build OpenBIOS. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ 6a7f09b23143ab6446185066783404cf35826c8d 194 193 2015-05-14T16:44:35Z Programmingkid 15 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include: * Internal memory API (OFMEM) implementation * Forth Source Debugger * 64-bit 1275 6d5 implementation * Forth Local Variables * Internal libopenbios code reorganisation See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/SPARC32 is currently able to boot the following OS/kernels: * Linux * NetBSD * OpenBSD * Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work) OpenBIOS/SPARC64 is currently able to boot the following OS/kernels: * Linux (with virtio drivers) OpenBIOS/PPC is currently able to boot the following OS/kernels: * Linux * HelenOS The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU: * FreeBSD * NetBSD * Darwin/Mac OS X [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = Download fcode suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel Build the needed programs inside the fcode-utils-devel folder: $ make Install the programs: $ make install Download OpenBIOS: $ svn co svn://openbios.org/openbios/trunk/openbios-devel Select the build targets: $ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64 Build OpenBIOS: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- or $ make -C obj-ppc CC=powerpc-elf-gcc The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = Additional Resources = [http://www.mediafire.com/download/wy5xgj2hwjp8k4k/AWOS_Cross-Compilers.zip PowerPC, x86, ARM, and Sparc elf cross-compilers for Mac OS X ] *This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script. Example: CROSS_COMPILE=ppc-elf- ./switch-arch ppc *As of May 2015, a problem with this compiler and the file usbohci.c causes compiling to fail. This is only because compiler warnings are being treated as errors. To disable this option, open the Makefile.target file (located at the root level of the openbios-devel folder) and remove the "-Werror" text. = Notes for Building on Mac OS X = There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem. If this happens to you, try setting the HOSTARCH variable before using the switch-arch script. Example: HOSTARCH=amd64 ./switch-arch ppc = Troubleshooting = Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting'' <br>- Install the fcode suite first before trying to build OpenBIOS. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ 3cee7d2d6ea0d5f64073d8ea46be1a0f7a142ea3 195 194 2016-07-08T17:22:21Z Programmingkid 15 Add Mac OS 9 info wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include: * Internal memory API (OFMEM) implementation * Forth Source Debugger * 64-bit 1275 6d5 implementation * Forth Local Variables * Internal libopenbios code reorganisation See the [http://tracker.coreboot.org/trac/openbios OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [http://tracker.coreboot.org/trac/openbios/changeset/1135/trunk/openbios-devel?old_path=%2F&old=1135&format=zip OpenBIOS 1.1] (2013-05-04) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/SPARC32 is currently able to boot the following OS/kernels: * Linux * NetBSD * OpenBSD * Some later versions of Solaris (Solaris 8 and early Solaris 9 are known to work) OpenBIOS/SPARC64 is currently able to boot the following OS/kernels: * Linux (with virtio drivers) OpenBIOS/PPC is currently able to boot the following OS/kernels: * Linux * HelenOS The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU: * FreeBSD * NetBSD * Darwin/Mac OS X * Mac OS 9 [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://subversion.tigris.org/ Subversion ] repository. If you do not want to use Subversion, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ svn co svn://openbios.org/openbios/trunk/openbios-devel if you want a specific revision: $ svn co svn://openbios.org/openbios/trunk/openbios-devel -r 1153 or for checking out the source code for the OpenBIOS FCode Suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel If your company installed a firewall that blocks the svn port (3690) you can also check out using the webdav frontend: $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/openbios-devel</nowiki> or $ svn co <nowiki>https://www.openbios.org/openbios-svn/trunk/fcode-utils</nowiki> For versions prior to r470, please remove the /trunk component from the path. == Developer access == Access for developers is very similar to anonymous access. Just add your subversion username as follows when checking out the repository: $ svn co svn://username@openbios.org/openbios/trunk/openbios-devel Subversion has commands very similar to CVS. = Source code browsing = You can also browse the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel OpenBIOS subversion repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [http://tracker.coreboot.org/trac/openbios/changeset/latest/trunk/openbios-devel?old_path=%2F&format=zip most current snapshot] directly. = Building OpenBIOS = Download fcode suite: $ svn co svn://openbios.org/openbios/trunk/fcode-utils-devel Build the needed programs inside the fcode-utils-devel folder: $ make Install the programs: $ make install Download OpenBIOS: $ svn co svn://openbios.org/openbios/trunk/openbios-devel Select the build targets: $ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64 Build OpenBIOS: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- or $ make -C obj-ppc CC=powerpc-elf-gcc The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = Additional Resources = [http://www.mediafire.com/download/wy5xgj2hwjp8k4k/AWOS_Cross-Compilers.zip PowerPC, x86, ARM, and Sparc elf cross-compilers for Mac OS X ] *This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script. Example: CROSS_COMPILE=ppc-elf- ./switch-arch ppc *As of May 2015, a problem with this compiler and the file usbohci.c causes compiling to fail. This is only because compiler warnings are being treated as errors. To disable this option, open the Makefile.target file (located at the root level of the openbios-devel folder) and remove the "-Werror" text. = Notes for Building on Mac OS X = There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem. If this happens to you, try setting the HOSTARCH variable before using the switch-arch script. Example: HOSTARCH=amd64 ./switch-arch ppc = Troubleshooting = Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting'' <br>- Install the fcode suite first before trying to build OpenBIOS. = More on Subversion = * [http://svnbook.red-bean.com/ Subversion book] - this online book is the best SVN documentation available online. * [http://subversion.tigris.org/ Subversion homepage] __NOEDITSECTION__ c592603d22940ba1e7b92c722e003063f89ef0f1 196 195 2016-07-09T23:43:18Z Mark 16 wikitext text/x-wiki = OpenBIOS - Code Releases = Welcome to the OpenBIOS download page. Here you'll find releases of OpenBIOS components. After 4 years of hard work, OpenBIOS v1.1 has been released. The new features include: * Internal memory API (OFMEM) implementation * Forth Source Debugger * 64-bit 1275 6d5 implementation * Forth Local Variables * Internal libopenbios code reorganisation See the [https://github.com/openbios/openbios/issues OpenBIOS issue tracker] for milestones, tasks and open bugs. = OpenBIOS = Download the latest release of OpenBIOS including the Forth kernel and all of the IEEE 1275-1994 compliant Forth code for user interface, client interface and device interface. Latest release version is: [https://github.com/openbios/openbios/archive/v1.1.zip OpenBIOS 1.1] (2013-05-04) '''NOTE:''' The FCODE utilities are no longer part of the main OpenBIOS distribution. Have a look at the [[FCODE suite]] if you are looking for toke and detok. = Status and use cases = OpenBIOS can be used directly as a boot ROM for [http://qemu.org/ QEMU] system emulators for PPC, PPC64, Sparc32 and Sparc64. OpenBIOS/SPARC32 is currently able to boot the following OS/kernels: * Linux * NetBSD * OpenBSD * Solaris OpenBIOS/SPARC64 is currently able to boot the following OS/kernels: * Linux * NetBSD * OpenBSD * FreeBSD * HelenOS OpenBIOS/PPC is currently able to boot the following OS/kernels: * Linux * HelenOS * Darwin/Mac OS X The following operating systems will partially boot, but may suffer from some emulation bugs under QEMU: * FreeBSD * NetBSD * Mac OS 9 [http://www.coreboot.org Coreboot] can use OpenBIOS as a payload on x86. Do not try to put OpenBIOS in a real boot ROM, it will not work and may damage your hardware! == Kernel == There is also an ancient stand-alone version of the OpenBIOS Forth kernel ''BeginAgain''. The last released stand-alone version is: [http://www.openbios.org/data/bin/kernel-1.1.tar.bz2 BeginAgain 1.1] (2003-10-12). '''NOTE:''' You should use the latest version of ''BeginAgain'' that is present in the complete ''OpenBIOS release'' above. It is much newer than ''BeginAgain 1.1'' and it supports cross compiling and lots of other nifty features. ''BeginAgain 1.1'' is here for educational purposes only: The core binary is only 6k on x86. = Development Environment = == FCode Suite == To download the latest version of the FCode Suite, including an FCode detokenizer, an FCode tokenizer and the romheader utility, please go to the [[FCODE suite|FCode Suite page]]. == Flashing == /dev/bios is obsolete and has been replaced by a new and better utility. Please download a coreboot snapshot and use the [[FlashRom|flashrom utility]] from ''coreboot-v2/util/flashrom''. = Development Repository = OpenBIOS keeps its development tree in a [http://git-scm.com/ git ] repository. If you do not want to use git, please have a look at the [[#Snapshots|Snapshots]] below. == Anonymous access == You can check it out as follows: $ git clone https://github.com/openbios/openbios.git or for checking out the source code for the OpenBIOS FCode Suite: $ git clone https://github.com/openbios/fcode-utils.git == Developer access == Access for developers is very similar to anonymous access. Just add your github username as follows when checking out the repository: $ git clone https://username@github.com/openbios/openbios.git = Source code browsing = You can also browse the [https://github.com/openbios/openbios OpenBIOS github repository] online. = Snapshots = There is currently no archive of snapshots available for OpenBIOS. You can use the [https://github.com/openbios/openbios source code browser] to download a ZIP archive of any revision. Alternatively you can also download the [https://github.com/openbios/openbios/archive/master.zip most current snapshot] directly. = Building OpenBIOS = Download fcode suite: $ git clone https://github.com/openbios/fcode-utils.git Build the needed programs inside the fcode-utils-devel folder: $ make Install the programs: $ make install Download OpenBIOS: $ git clone https://github.com/openbios/openbios.git Select the build targets: $ ./config/scripts/switch-arch sparc32 sparc64 x86 ppc amd64 Build OpenBIOS: $ make or $ make build-verbose OpenBIOS can even be cross-compiled on a host which is different type (big vs. little endian and 32 vs. 64 bits) from the target. At least Linux and OpenBSD hosts are known to work. If your cross tools use different prefix from what the makefiles assume, the prefix can be overridden with: $ make build-verbose TARGET=powerpc-elf- or $ make -C obj-ppc CC=powerpc-elf-gcc The OpenBIOS binaries (typically openbios-builtin.elf) can be found in obj- subdirectories. The Unix executable version (native only) is named openbios-unix. = Additional Resources = [http://www.mediafire.com/download/wy5xgj2hwjp8k4k/AWOS_Cross-Compilers.zip PowerPC, x86, ARM, and Sparc elf cross-compilers for Mac OS X ] *This compiler uses a unsupported compiler prefix. To use it, set the CROSS_COMPILE variable to "ppc-elf-" before running the switch-arch script. Example: CROSS_COMPILE=ppc-elf- ./switch-arch ppc = Notes for Building on Mac OS X = There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "''panic: segmentation violation at …''" while building, you probably have this problem. If this happens to you, try setting the HOSTARCH variable before using the switch-arch script. Example: HOSTARCH=amd64 ./switch-arch ppc = Troubleshooting = Seeing this message: ''Unable to locate toke executable from the fcode-utils package - aborting'' <br>- Install the fcode suite first before trying to build OpenBIOS. __NOEDITSECTION__ bcd6dcd3acb863e9a71d8311bbf4689c08063bcb Welcome to OpenBIOS 0 2 47 46 2013-05-04T11:25:03Z BlueSwirl 14 wikitext text/x-wiki <div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The '''OpenBIOS''' project provides you with most free and open source Open Firmware implementations available. Here you find several implementations of IEEE 1275-1994 (Referred to as Open Firmware) compliant firmware. Among its features, Open Firmware provides an instruction set independent device interface. This can be used to boot the operating system from expansion cards without native initialization code. It is Open Firmware's goal to work on all common platforms, like x86, AMD64, <nowiki>PowerPC</nowiki>, ARM, Sparc and Mips. With its flexible and modular design, Open Firmware targets servers, workstations and embedded systems, where a sane and unified firmware is a crucial design goal and reduces porting efforts noticably. Open Firmware is found on many servers and workstations and there are several commercial implementations from [[OpenBOOT|SUN]], [[Open Firmware|Firmworks]], [[SmartFirmware|CodeGen]], Apple, [[SLOF|IBM]] and others. In most cases, the Open Firmware implementations provided on this site rely on an additional low-level firmware for hardware initialization, such as [http://www.coreboot.org/ coreboot] or [http://www.denx.de/wiki/U-Boot U-Boot]. </div> {| cellspacing=5 cellpadding=5 border=0 valign="top" width=100% |- |style="vertical-align:top"| == Download == Get the latest version of OpenBIOS. See the [[OpenBIOS|development download page]]. Have a look at the Implementations section on the left side. == Contact == The easiest way to get in contact with the OpenBIOS team is to subscribe the OpenBIOS mailinglist. If you want to contribute to OpenBIOS development, you should subscribe to the mailinglist as well. See further information on the [[Mailinglist]] page. == Credits == Who are the people behind OpenBIOS? Who helped and contributed to make OpenBIOS as successful as it is today. See the growing [[Credits]] page for a (yet incomplete) list of people contributing to OpenBIOS with hardware, patches, code, hints, etc. |style="vertical-align:top"| == News == <small> '''OpenBIOS v1.1 released''' (2013-05-04) After 4 years of hard work, the OpenBIOS team are proud to announce the release of OpenBIOS 1.1. Since the last release, over 600 commits have been made to the SVN repository with a wealth of improvements and new features. As a result of these changes, the ability of OpenBIOS 1.1 to boot various kernels under QEMU has significantly improved. For more information, please visit the [[OpenBIOS|development page]]. '''OpenBIOS v1.0 released''' (2009-03-01) OpenBIOS v1.0 has been released. For more information, please visit the [[OpenBIOS|development page]]. '''FCODE suite 1.0.2 released''' (2006-10-30) [mailto:David@paktor.biz David Paktor] added tracing support to the [[FCODE suite|OpenBIOS FCODE suite]]. '''LinuxBIOS Symposium 2006''' (2006-10-01) The first European [http://www.coreboot.org/index.php/LinuxBIOS_Symposium_2006 LinuxBIOS Symposium 2006] took place in Hamburg from October 1st to 3rd. This event was organized by [http://www.coresystems.de/ coresystems GmbH]. '''FCODE suite 1.0.1 available''' (2006-09-21) [mailto:David@paktor.biz David Paktor], when he was with the IBM Corporation, contributed to the [[FCODE suite|OpenBIOS FCODE suite]]. This release has higher test coverage, a more detailed report on one type of error, and removal of dead code and consolidation of some other code. '''SUN released OpenBOOT source code''' (2006-09-06) [http://www.sun.com/ SUN microsystems] has recently released their OpenBOOT source code to the community under a BSD license. Go to their [http://opensparc-t1.sunsource.net/download_sw.html OpenSparc T1 website] to download the full archive (190MB) or check out our [[OpenBOOT|local mirror]] (1.7MB). [[News|[older news]]] </small> |} __NOTOC__ __NOEDITSECTION__ 22d9adcf80a8a7462399927c270af71dd25a8c65 FCODE suite 0 17 271 270 2016-01-16T01:35:32Z Stepan 2 wikitext text/x-wiki == What is the OpenBIOS FCODE Suite? == OpenBIOS provides a sophisticated set of FCODE utilities: * the tokenizer '''toke''' * the detokenizer '''detok''' * and a PCI rom header utility. * a portable implementation of forth local values These files are offered without any warranty. If you experience problems, please contact the [[Mailinglist|OpenBIOS mailinglist]]. == Downloading the OpenBIOS FCode Suite == '''The latest version of the OpenBIOS FCode Suite is 1.0.2 (released 2006-10-30)''' === Source Code === View the [https://github.com/openbios/fcode-utils Sources] online. Available as a ZIP-File: [https://github.com/openbios/fcode-utils/archive/v1.0.2.zip FCode-utils 1.0.2] See the [https://raw.githubusercontent.com/openbios/fcode-utils/v1.0.2/ChangeLog ChangeLog] for a list of changes since 1.0.1. A hand crafted html document describes [http://www.openbios.org/data/visiblediffs/V01_versus_V2x/ some more changes]. === Documentation === There are three documents, all in html format, plus a sub-directory of templates that provide common formatting support. It is important that these be kept in the same directory, as there are some links from one file to another. The documents are User's Guides to: * the [http://www.openbios.org/data/fcodesuite/Documents/toke.html New Features of the Tokenizer], * [http://www.openbios.org/data/fcodesuite/Documents/detok.html the Detokenizer], and * the [http://www.openbios.org/data/fcodesuite/Documents/localvalues.html Local Values feature], which is mentioned briefly in the Tokenizer User's Guide and described fully in the Local Values document. These documents are also part of the source code repository. There is also doxygen generated documentation available * [http://openbios.org/data/toke/toke-0.6.10 doxygen documentation for toke 0.6.10] * [http://openbios.org/data/toke/toke-1.0 doxygen documentation for toke 1.0.0] * TODO: doxygen documentation for toke 1.0.2 === Executables for three platforms === While you can find a couple of executables here we strongly recommend that you compile the FCode toolchain from the sources above so you gain from the integration work and fixes that have been done since these executables have been created. There are three programs: the Tokenizer, the Detokenizer and the ROMHeaders utility. ([http://www.openbios.org/data/fcodesuite/Binaries Binaries]) There is a version for each of three platforms (i.e., combinations of Processor and O/S): Cygwin running on an X86, GNU Linux running on a Power-PC, and AIX running on a Power-PC. There are two variants of each version: One that has level-2 Optimization and one that has no optimization at all, which I provided for purposes of Debugging. Optimization causes some routines and variables to become obscured and inaccessible to debuggers, and also re-arranges the sequence of execution in a way that can become confusing during single-stepping. And finally, for each, there is a "stripped" and an "unstripped" executable image. The "unstripped" image has an extension of "unstripped"; the "stripped" image has no extension. There are separate directories for the Debug and Optim(ized Level)2 variants. Under each are sub-directories for the different platforms, within which the executable images reside. All binaries are also available in a single Tar-File: [http://www.openbios.org/data/fcodesuite/Binaries.tar.bz2 Binaries.tar.bz2] === Local Value Support === Includ-able tokenizer-source files for [https://github.com/openbios/fcode-utils/tree/master/localvalues Local Values Support] (explained in one of the User's Guide documents). Five files: * One supplies the [https://github.com/openbios/fcode-utils/tree/master/localvalues/LocalValuesSupport.fth basic functionality] * the second adds a [https://github.com/openbios/fcode-utils/tree/master/localvalues/LocalValuesDevelSupport.fth development-time facility] * the third generates a variant behavior ([https://github.com/openbios/fcode-utils/tree/master/localvalues/GlobalLocalValues.fth "Global" scope] rather than scope limited to a single Device-Node) * and the fourth [https://github.com/openbios/fcode-utils/tree/master/localvalues/GlobalLocalValuesDevel.fth combines the "Global" variant behavior with the development-time facility]. * The fifth [https://github.com/openbios/fcode-utils/tree/master/localvalues/TotalLocalValuesSupport.fth allows the choice of combinations to be governed by command-line switches], and is probably the best to use with Makefiles in commercial development and production environments. There is commentation in each one explaining how it is to be used. Available as part of the OpenBIOS FCODE suite. === Todo === A list of "Still To Be Done" items, excerpted from the commentation in the Sources The source files have, scattered among their commentation, an occasional item discussing a feature or implementation detail that might be worth attention in future revisions. This file is a [https://github.com/openbios/fcode-utils/tree/master/TODO collection of all of them] in a single convenient location. == Unit-Test Suite == === The suite of unit-test cases === This is the [https://github.com/openbios/fcode-utils/tree/master/testsuite accumulation of test-cases] that were created in the course of development. Some of these are a straightforward invocation of a feature, others are convoluted combinations of features whose interaction needed to be carefully watched, and still others are collections of coding errors, for purposes of verifying the Error-detection capabilities of the Tokenizer. They are grouped into sub-directories representing broad categories. Run the unit-test cases with $ make tests === Test Tools === The tools to run the Unit-Test Suite as a batch and examine the results for changes relative to the results from a previous run. The process of manually running a unit-test and comparing against the previous output, after every change, became unwieldy, especially when it came to running the entire suite of tests. These scripts were developed to automate both processes: * [https://github.com/openbios/fcode-utils/tree/master/testsuite/AutoExec AutoExec] automates the execution, and * [https://github.com/openbios/fcode-utils/tree/master/testsuite/AutoCompare AutoCompare] automates the comparison. There is commentation in each explaining how it is used. == Unit-Test Suite Logs == These can be used as base-lines for comparison against future versions, or, if so be, versions compiled for additional platforms. Note that a comparison of these against each other will not yield exact identity. Some of the test-cases, for instance, code the current date and time, others display a complete file-path, and still one other attempts to load a file for encoding using a syntax that is erroneous on some O/S's but not on others. All in all, five or six file differences will be expected to be reported by AutoCompare. * The results from a run of the Unit-Test Suite on the [https://github.com/openbios/fcode-utils/tree/master/testlogs/testlogs-x86-cygwin X86/Cygwin] platform. * The results from a run of the Unit-Test Suite on the [https://github.com/openbios/fcode-utils/tree/master/testlogs/testlogs-ppc-linux PowerPC/Linux] platform. * The results from a run of the Unit-Test Suite on the [https://github.com/openbios/fcode-utils/tree/master/testlogs/testlogs-ppc-aix PowerPC/AIX] platform. == Coverage Reports == The test suite has been run using gcov/lcov to produce graphical code coverage reports. * [http://www.openbios.org/data/coverage-fcode-suite-1.0.2/ coverage report for FCODE suite 1.0.2] * [http://www.openbios.org/data/coverage-toke-1.0.2/ coverage report for toke 1.0.2] * [http://openbios.org/data/toke/coverage/ coverage report for toke 1.0.0] == Kudos and Thanks == <div style="margin-top:0.5em; margin-bottom:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#efefff; align:right; border:1px solid #aabbcc;"> The OpenBIOS FCODE Suite has been significantly enhanced to meet commercial grade requirements by [mailto:David@paktor.biz David Paktor]. Regarding to code readability and stability, he made the FCODE suite the best part of OpenBIOS. And it's probably the best FCODE development environment out there. '''Thank you, David!''' </div> __NOEDITSECTION__ b369115445537a1bdbcce0d972adf43d2a22a415 Hauptseite 0 1 1 2016-10-27T13:56:54Z MediaWiki default 0 wikitext text/x-wiki <strong>MediaWiki wurde installiert.</strong> Hilfe zur Benutzung und Konfiguration der Wiki-Software findest du im [//meta.wikimedia.org/wiki/Help:Contents Benutzerhandbuch]. == Starthilfen == * [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Configuration_settings Liste der Konfigurationsvariablen] * [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki-FAQ] * [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailingliste neuer MediaWiki-Versionen] * [//www.mediawiki.org/wiki/Special:MyLanguage/Localisation#Translation_resources Lokalisiere MediaWiki für deine Sprache] * [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Combating_spam Erfahre, wie du Spam auf deinem Wiki bekämpfen kannst] 4f75d940dadec8f0cc78012ff33dda4e80e91b65 SLOF 0 37 427 391 2017-02-13T08:51:21Z Mark 16 wikitext text/x-wiki Slimline Open Firmware (SLOF) is initialization and boot source code based on the IEEE-1275 (Open Firmware) standard, developed by engineers of the IBM Corporation. The SLOF source code provides illustrates what's needed to initialize and boot Linux or a hypervisor on the industry Open Firmware boot standard. The link below offers: * Documentation * Pseudo Open Firmware for prototyping, test, and debug * Low Level Firmware for IBM's JS20 (closed source) * https://github.com/aik/SLOF/ d057c57c6232a3a98e94dc7da3c3cbadc120c092 428 427 2017-02-13T08:52:31Z Mark 16 wikitext text/x-wiki Slimline Open Firmware (SLOF) is initialization and boot source code based on the IEEE-1275 (Open Firmware) standard, developed by engineers of the IBM Corporation. The SLOF source code provides illustrates what's needed to initialize and boot Linux or a hypervisor on the industry Open Firmware boot standard. Currently the SLOF source code is hosted on github at https://github.com/aik/SLOF/ and provides: * Documentation * Pseudo Open Firmware for prototyping, test, and debug * Low Level Firmware for IBM's JS20 (closed source) 0da313b7892c1ba405668afba57c660fd56f5b83 429 428 2017-02-13T10:36:02Z Mark 16 wikitext text/x-wiki Slimline Open Firmware (SLOF) is initialization and boot source code based on the IEEE-1275 (Open Firmware) standard, developed by engineers of the IBM Corporation. The SLOF source code provides illustrates what's needed to initialize and boot Linux or a hypervisor on the industry Open Firmware boot standard. Currently the SLOF source code is hosted on github at https://github.com/aik/SLOF/ and provides: * Documentation * An Open Firmware implementation for prototyping, test, and debug * Low Level Firmware for IBM's JS20, JS21 and the YDL PowerStation (partially closed source) * Firmware for the emulated 'pseries' machine of QEMU b85065b4316493599306b2cdcfd25c815a44e530 Adding words to openbios 0 44 430 406 2017-12-21T16:00:46Z Programmingkid 15 Update where the c function array is kept wikitext text/x-wiki How to add “words” to the OpenBIOS Dictionary using the C language. In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word. The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly. Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this: static void dog(void) { printk(“bark bark!”); } Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully. Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look: /* the word names are used to generate the prim words in the dictionary. This is done by the C written interpreter. */ static const char *wordnames[] = { "(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)", "(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop", "2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>", "r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*", "mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a", "and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@", "w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<", "sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute", "here", "here!", "dobranch", "do?branch", "unaligned-w@", "unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@", "iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug", "$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here }; Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary. sysdebug, /* sys-debug */ do_include, /* $include */ do_encode_file, /* $encode-file */ do_debug_xt, /* (debug */ do_debug_off, /* (debug-off) */ dog /* dog */ //<-------- insert here }; Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder: cd openbios-devel Set the architure you wish to build openbios for (x86 is used in this example): ./config/scripts/switch-arch x86 Then start building OpenBIOS: make Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS. We run the program like this: ./obj-x86/openbios-unix ./obj-x86/openbios-unix.dict We should then be greeted by the OpenBIOS Banner: Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06 Type 'help' for detailed information [unix] Booting default not supported. 0 > Type dog at the prompt and see what it says: 0 > dog bark bark! ok 0 > Congratulations, you have just taken your first step to improving OpenBIOS. fc7ea8a5e94fcc72c01df7027215322093d536cb 431 430 2017-12-21T16:34:14Z Programmingkid 15 wikitext text/x-wiki How to add “words” to the OpenBIOS Dictionary using the C language. In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word. The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly. Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this: static void dog(void) { printk(“bark bark!”); } Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully. Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look: /* the word names are used to generate the prim words in the dictionary. This is done by the C written interpreter. */ static const char *wordnames[] = { "(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)", "(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop", "2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>", "r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*", "mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a", "and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@", "w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<", "sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute", "here", "here!", "dobranch", "do?branch", "unaligned-w@", "unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@", "iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug", "$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here }; Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary. sysdebug, /* sys-debug */ do_include, /* $include */ do_encode_file, /* $encode-file */ do_debug_xt, /* (debug */ do_debug_off, /* (debug-off) */ dog /* dog */ //<-------- insert here }; Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder: cd openbios-devel Set the architure you wish to build openbios for (amd64 is used in this example): ./config/scripts/switch-arch amd64 Then start building OpenBIOS: make Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS. We run the program like this: ./obj-amd64/openbios-unix ./obj-amd64/openbios-unix.dict We should then be greeted by the OpenBIOS Banner: Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06 Type 'help' for detailed information [unix] Booting default not supported. 0 > Type dog at the prompt and see what it says: 0 > dog bark bark! ok 0 > Congratulations, you have just taken your first step to improving OpenBIOS. f0a70febe0cd030dbd55e3425237646e64e4ba50 432 431 2017-12-21T16:35:35Z Programmingkid 15 wikitext text/x-wiki How to add “words” to the OpenBIOS Dictionary using the C language. In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word. The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly. Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this: static void dog(void) { printk(“bark bark!”); } Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully. Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look: /* the word names are used to generate the prim words in the dictionary. This is done by the C written interpreter. */ static const char *wordnames[] = { "(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)", "(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop", "2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>", "r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*", "mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a", "and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@", "w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<", "sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute", "here", "here!", "dobranch", "do?branch", "unaligned-w@", "unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@", "iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug", "$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here }; Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary. sysdebug, /* sys-debug */ do_include, /* $include */ do_encode_file, /* $encode-file */ do_debug_xt, /* (debug */ do_debug_off, /* (debug-off) */ dog /* dog */ //<-------- insert here }; Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder: cd openbios-devel Set the architure you wish to build openbios for (amd64 is used in this example): ./config/scripts/switch-arch amd64 Then start building OpenBIOS: make build-verbose Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS. We run the program like this: ./obj-amd64/openbios-unix ./obj-amd64/openbios-unix.dict We should then be greeted by the OpenBIOS Banner: Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06 Type 'help' for detailed information [unix] Booting default not supported. 0 > Type dog at the prompt and see what it says: 0 > dog bark bark! ok 0 > Congratulations, you have just taken your first step to improving OpenBIOS. af040a3e03bd7c15c9529d9adc1f9e075733293a File:Installer.png 6 49 436 2017-12-21T23:43:40Z Programmingkid 15 AWOS installer wikitext text/x-wiki AWOS installer 81211c3c0a94ce7b7196e131a6c24ef66a91415c File:Example.png 6 50 438 2017-12-21T23:50:16Z Programmingkid 15 How to comment out the -Werrors line. wikitext text/x-wiki How to comment out the -Werrors line. 7c31a3db67e98f7482085b5e2993980759b64609 How to build OpenBIOS on Mac OS X 0 48 451 450 2017-12-22T00:19:21Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=$PATH:/usr/local/ppcelfgcc/bin<br> export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br> To open this file use these commands:<br> cd ~<br> open .bash_profile<br> Then simply paste the export commands in this file. Save changes when you are done. <BR><br> To test to see if the cross compilers work issue these commands:<br> i386-elf-gcc --version <br> ppc-elf-gcc --version <br> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> c9219df0f75ee2a7f79579a93ac4f0b42b302f22 452 451 2017-12-22T00:19:58Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=$PATH:/usr/local/ppcelfgcc/bin<br> export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br> To open this file use these commands:<br> cd ~<br> open .bash_profile<br> Then simply paste the export commands in this file. Save changes when you are done. <BR><br> To test to see if the cross compilers work issue these commands:<br> i386-elf-gcc --version <br> ppc-elf-gcc --version <br><br> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 7410aa87b48299efc682ac08b04447f121d2f630 453 452 2017-12-22T00:21:49Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=$PATH:/usr/local/ppcelfgcc/bin<br> export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br> To open this file use these commands:<br> cd ~<br> open .bash_profile<br> Then simply paste the export commands in this file. Save changes when you are done. <BR><br> To test to see if the cross compilers work issue these commands:<br> i386-elf-gcc --version <br> ppc-elf-gcc --version <br><br> You should see a message like this print:<br> ppc-elf-gcc (GCC) 4.2.3 Copyright (C) 2007 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.<br> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> a46cba4f6d24196c1f0e8e881fd5ae4d9271cf2b 454 453 2017-12-22T00:26:39Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=$PATH:/usr/local/ppcelfgcc/bin<br> export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br> To open this file use these commands:<br> cd ~<br> open .bash_profile<br> Then simply paste the export commands in this file. Save changes when you are done. <BR><br> To test to see if the cross compilers work issue these commands:<br> i386-elf-gcc --version <br> ppc-elf-gcc --version <br><br> You should see a message like this print:<br> ppc-elf-gcc (GCC) 4.2.3 Copyright (C) 2007 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.<br> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "panic: segmentation violation at …" while building, you probably have this problem. <br><br> If this happens to you, try setting the HOSTARCH variable before using the switch-arch script. <br> Example: <br> HOSTARCH=amd64 <br> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 84e6be0cba9059cd2ed69e182ff46b79e86cd1ac 455 454 2017-12-22T00:27:36Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=$PATH:/usr/local/ppcelfgcc/bin<br> export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br> To open this file use these commands:<br> cd ~<br> open .bash_profile<br> Then simply paste the export commands in this file. Save changes when you are done. <BR><br> To test to see if the cross compilers work issue these commands:<br> i386-elf-gcc --version <br> ppc-elf-gcc --version <br><br> You should see a message like this print:<br> ppc-elf-gcc (GCC) 4.2.3 Copyright (C) 2007 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.<br> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "panic: segmentation violation at …" while building, you probably have this problem. <br><br> If this happens to you, try setting the HOSTARCH variable before using the switch-arch script. <br> Example: <br> HOSTARCH=amd64 CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose <br> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 98e4a5651c5a6101498054786f32458e4c2e24c6 456 455 2017-12-22T00:28:40Z Programmingkid 15 wikitext text/x-wiki <P><BR> Apple's GCC on Mac OS X does not support the elf binary format. So compiling OpenBIOS on Mac OS X is not easy. Thankfully someone has already made a PowerPC cross compiler for Mac OS X that can compile OpenBIOS. Note: this tutorial was made with Mac OS 10.6. I suggest you use Mac OS 10.5 or higher when trying to build OpenBIOS. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 1: Installing the cross compiler on Mac OS X</U><BR> </B></FONT><BR> 1). Download the AWOS cross compiler: http://awos.wilcox-tech.com/downloads/AWOS-CC.bz2<BR> <BR> 2) Expand this bz2 file by double clicking on it.<BR> <BR> 3) Rename the file AWOS-CC to AWOS-CC.img. <BR> <BR> 4) Open the image file. <BR> <BR> 5) Open the "AWOS Cross-Compiler for OS X" file on the newly mounted disk.<BR> <BR> 6) Select the "PowerPC Support" and the "i386 Support" check boxes when given the option.<br> [[File:Installer.png]] <BR> <BR> 7) Continue with the installation until it is finished. <BR> <BR> 8) Add the new compiler's folder to the PATH variable. This is the command you use if you are in the Bash shell:<br> export PATH=$PATH:/usr/local/ppcelfgcc/bin<br> export PATH=$PATH:/usr/local/i386elf/i386elf/bin<br> Note: the above step will probably need to be repeated with each new session of the shell you start. It can be made permanent by altering the .bash_profile file for the Bash shell. It is located in your home folder. <br> To open this file use these commands:<br> cd ~<br> open .bash_profile<br> Then simply paste the export commands in this file. Save changes when you are done. <BR><br> To test to see if the cross compilers work issue these commands:<br> i386-elf-gcc --version <br> ppc-elf-gcc --version <br><br> You should see a message like this print:<br> ppc-elf-gcc (GCC) 4.2.3 Copyright (C) 2007 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.<br> This should conclude installing the compiler. <BR> <BR> <BR> <FONT COLOR="#AA0000"><B><U>Part 2: Building OpenBIOS from source code</U><BR> </B></FONT><BR> 1) Open the Terminal application.<BR> <BR> 2) Change the current directory to the inside of the openbios-devel folder. <BR> <BR> 3) Open the file makefile.target and add a # in front of this text "CFLAGS+= -Werror". Save the changes when done.<br> [[File:example.png]] <br> <br> 4) Type this command in the terminal and watch the show: <BR> <BR> CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose<BR> <BR> There is a known build issue when building on Mac OS 10.6. The switch-arch script will report your computer as 32 bit (x86) when it is really 64 bit (amd64). If you see the message "panic: segmentation violation at …" while building, you probably have this problem. <br><br> If this happens to you, try setting the HOSTARCH variable before using the switch-arch script. <br><br> Example: <br><br> HOSTARCH=amd64 CROSS_COMPILE=ppc-elf- ./config/scripts/switch-arch ppc &amp;&amp; make build-verbose <br><br> To test out your newly created binary in qemu, use the -bios option:<BR> qemu-system-ppc -bios &lt;path to binary&gt;/openbios-qemu.elf.nostrip<BR> <BR> This tutorial was made using information available on 12/21/2017. If you encounter any problems, please report it to the openbios developer list: openbios@openbios.org. </P> 3c461bd2d0ad13885c8f4b6fd3b16ae819cd08c5 Adding words to openbios 0 44 457 432 2017-12-27T17:12:16Z Programmingkid 15 Add PowerPC register access example wikitext text/x-wiki How to add “words” to the OpenBIOS Dictionary using the C language. In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word. The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly. Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this: static void dog(void) { printk(“bark bark!”); } Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully. Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look: /* the word names are used to generate the prim words in the dictionary. This is done by the C written interpreter. */ static const char *wordnames[] = { "(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)", "(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop", "2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>", "r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*", "mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a", "and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@", "w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<", "sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute", "here", "here!", "dobranch", "do?branch", "unaligned-w@", "unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@", "iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug", "$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here }; Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary. sysdebug, /* sys-debug */ do_include, /* $include */ do_encode_file, /* $encode-file */ do_debug_xt, /* (debug */ do_debug_off, /* (debug-off) */ dog /* dog */ //<-------- insert here }; Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder: cd openbios-devel Set the architure you wish to build openbios for (amd64 is used in this example): ./config/scripts/switch-arch amd64 Then start building OpenBIOS: make build-verbose Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS. We run the program like this: ./obj-amd64/openbios-unix ./obj-amd64/openbios-unix.dict We should then be greeted by the OpenBIOS Banner: Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06 Type 'help' for detailed information [unix] Booting default not supported. 0 > Type dog at the prompt and see what it says: 0 > dog bark bark! ok 0 > Congratulations, you have just taken your first step to improving OpenBIOS. == Advanced example: == Suppose you want to make a forth word that would give you access to a PowerPC CPU register. To do this you can use inline assembly language to access the register from C. Then use the bind_func() function to make this C function available to forth. In this example we implement a word called r3@ that will push the value of register r3 onto the top of the stack. In the file arch/ppc/qemu/init.c add this code right above the arch_of_init() function: static void get_r3(void) { int value; asm volatile("mv %0 r3" : "=r"(value)); PUSH(value); } Then to make this function available from forth we add this line to the end of the arch_of_init() function in the same file: bind_func("r3@", get_r3); To build this example you would have to issue this command: ./config/scripts/switch-arch ppc && make build-verbose The resulting file can be used with QEMU like this: qemu-system-ppc -bios <path to openbios folder>/obj-ppc/openbios-qemu.elf.nostrip 10aad5fc6ebc330375e14a815e88f107b2b0a112 458 457 2017-12-27T17:12:47Z Programmingkid 15 wikitext text/x-wiki How to add “words” to the OpenBIOS Dictionary using the C language. In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word. The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly. Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this: static void dog(void) { printk(“bark bark!”); } Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully. Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look: /* the word names are used to generate the prim words in the dictionary. This is done by the C written interpreter. */ static const char *wordnames[] = { "(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)", "(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop", "2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>", "r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*", "mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a", "and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@", "w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<", "sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute", "here", "here!", "dobranch", "do?branch", "unaligned-w@", "unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@", "iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug", "$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here }; Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary. sysdebug, /* sys-debug */ do_include, /* $include */ do_encode_file, /* $encode-file */ do_debug_xt, /* (debug */ do_debug_off, /* (debug-off) */ dog /* dog */ //<-------- insert here }; Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder: cd openbios-devel Set the architure you wish to build openbios for (amd64 is used in this example): ./config/scripts/switch-arch amd64 Then start building OpenBIOS: make build-verbose Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS. We run the program like this: ./obj-amd64/openbios-unix ./obj-amd64/openbios-unix.dict We should then be greeted by the OpenBIOS Banner: Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06 Type 'help' for detailed information [unix] Booting default not supported. 0 > Type dog at the prompt and see what it says: 0 > dog bark bark! ok 0 > Congratulations, you have just taken your first step to improving OpenBIOS. == Advanced example: == Suppose you want to make a forth word that would give you access to a PowerPC CPU register. To do this you can use inline assembly language to access the register from C. Then use the bind_func() function to make this C function available to forth. In this example we implement a word called r3@ that will push the value of register r3 onto the top of the stack. In the file arch/ppc/qemu/init.c add this code right above the arch_of_init() function: static void get_r3(void) { int value; asm volatile("mv %0 r3" : "=r"(value)); PUSH(value); } Then to make this function available from forth we add this line to the end of the arch_of_init() function in the same file: bind_func("r3@", get_r3); To build this example you would have to issue this command: ./config/scripts/switch-arch ppc && make build-verbose The resulting file can be used with QEMU like this: qemu-system-ppc -bios <path to openbios folder>/obj-ppc/openbios-qemu.elf.nostrip f59bd5ae366a25bcd3de4cba8c39abba4fa7fbb1 459 458 2017-12-27T18:18:33Z Programmingkid 15 /* Advanced example: */ wikitext text/x-wiki How to add “words” to the OpenBIOS Dictionary using the C language. In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word. The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly. Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this: static void dog(void) { printk(“bark bark!”); } Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully. Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look: /* the word names are used to generate the prim words in the dictionary. This is done by the C written interpreter. */ static const char *wordnames[] = { "(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)", "(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop", "2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>", "r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*", "mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a", "and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@", "w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<", "sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute", "here", "here!", "dobranch", "do?branch", "unaligned-w@", "unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@", "iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug", "$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here }; Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary. sysdebug, /* sys-debug */ do_include, /* $include */ do_encode_file, /* $encode-file */ do_debug_xt, /* (debug */ do_debug_off, /* (debug-off) */ dog /* dog */ //<-------- insert here }; Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder: cd openbios-devel Set the architure you wish to build openbios for (amd64 is used in this example): ./config/scripts/switch-arch amd64 Then start building OpenBIOS: make build-verbose Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS. We run the program like this: ./obj-amd64/openbios-unix ./obj-amd64/openbios-unix.dict We should then be greeted by the OpenBIOS Banner: Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06 Type 'help' for detailed information [unix] Booting default not supported. 0 > Type dog at the prompt and see what it says: 0 > dog bark bark! ok 0 > Congratulations, you have just taken your first step to improving OpenBIOS. == Advanced example: == Suppose you want to make a forth word that would give you access to a PowerPC CPU register. To do this you can use inline assembly language to access the register from C. Then use the bind_func() function to make this C function available to forth. In this example we implement a word called r3@ that will push the value of register r3 onto the top of the stack. In the file arch/ppc/qemu/init.c add this code right above the arch_of_init() function: static void get_fpscr(void) { asm volatile("mffs 0"); asm volatile("stfd 0, 40(1)"); uint32_t return_value; asm volatile("lwz %0, 44(1)" : "=r"(return_value)); PUSH(return_value); } Then to make this function available from forth we add this line to the end of the arch_of_init() function in the same file: bind_func("fpscr@", get_fpscr); To build this example you would have to issue this command: ./config/scripts/switch-arch ppc && make build-verbose The resulting file can be used with QEMU like this: qemu-system-ppc -bios <path to openbios folder>/obj-ppc/openbios-qemu.elf.nostrip Entering fpscr@ in the OpenBIOS prompt would return the value to the fpscr. 3a7958ec826f21eb8b5c301e0a44629d0e632801 460 459 2017-12-27T18:19:37Z Programmingkid 15 /* Advanced example: */ wikitext text/x-wiki How to add “words” to the OpenBIOS Dictionary using the C language. In this example, we are going to implement a forth “word” in C. There are two arrays that need to be looked at. One is located in the file openbios-devel/kernel/bootstrap.c. The other array is located in the file openbios-devel/kernel/forth.c. The two arrays are used to map a C function to a forth word. The array in bootstrap.c is where the name of the forth word would go. The array in forth.c is where the corresponding C function would go. When adding to these arrays, make sure to add at the end of the list. This ensures everything continues to run smoothly. Here is an example on adding to the dictionary. Say you want to add a word called dog. You can define the C function like this: static void dog(void) { printk(“bark bark!”); } Add this function to a .c file. Knowing which file to pick can involve a lot of trial and error. In this example, we will use the file openbios-devel/kernel/forth.c. Be sure to include the static keyword before in the function declaration, or OpenBIOS won’t build successfully. Now we add the word dog to the end of the forth word list. Open the file bootstrap.c, then find the array called wordnames. When adding the word dog, be sure the name of the word is surrounded in double quotes. Here is how the array should look: /* the word names are used to generate the prim words in the dictionary. This is done by the C written interpreter. */ static const char *wordnames[] = { "(semis)", "", "(lit)", "", "", "", "", "(do)", "(?do)", "(loop)", "(+loop)", "", "", "", "dup", "2dup", "?dup", "over", "2over", "pick", "drop", "2drop", "nip", "roll", "rot", "-rot", "swap", "2swap", ">r", "r>", "r@", "depth", "depth!", "rdepth", "rdepth!", "+", "-", "*", "u*", "mu/mod", "abs", "negate", "max", "min", "lshift", "rshift", ">>a", "and", "or", "xor", "invert", "d+", "d-", "m*", "um*", "@", "c@", "w@", "l@", "!", "+!", "c!", "w!", "l!", "=", ">", "<", "u>", "u<", "sp@", "move", "fill", "(emit)", "(key?)", "(key)", "execute", "here", "here!", "dobranch", "do?branch", "unaligned-w@", "unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@", "iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug", "$include", "$encode-file", "(debug", "(debug-off)", “dog” // <------- insert here }; Next we add the C function name to the end of the function list. Open the file forth.c and add dog (no quotes this time) to the end of the list. You may want to add a comment to the right indicating the word this c function corresponds to, but this isn’t necessary. sysdebug, /* sys-debug */ do_include, /* $include */ do_encode_file, /* $encode-file */ do_debug_xt, /* (debug */ do_debug_off, /* (debug-off) */ dog /* dog */ //<-------- insert here }; Now you should be ready to build OpenBIOS. Go to the shell and set the current directory to the root level of openbios-devel folder: cd openbios-devel Set the architure you wish to build openbios for (amd64 is used in this example): ./config/scripts/switch-arch amd64 Then start building OpenBIOS: make build-verbose Once these commands are done, you need to be able to execute OpenBIOS. In this example we will be using the unix program version of OpenBIOS. We run the program like this: ./obj-amd64/openbios-unix ./obj-amd64/openbios-unix.dict We should then be greeted by the OpenBIOS Banner: Welcome to OpenBIOS v1.0 built on Mar 9 2010 21:06 Type 'help' for detailed information [unix] Booting default not supported. 0 > Type dog at the prompt and see what it says: 0 > dog bark bark! ok 0 > Congratulations, you have just taken your first step to improving OpenBIOS. == Advanced example: == Suppose you want to make a forth word that would give you access to a PowerPC CPU register. To do this you can use inline assembly language to access the register from C. Then use the bind_func() function to make this C function available to forth. In this example we implement a word called fpscr@ that will push the value of the FPSCR onto the top of the stack. In the file arch/ppc/qemu/init.c add this code right above the arch_of_init() function: static void get_fpscr(void) { asm volatile("mffs 0"); asm volatile("stfd 0, 40(1)"); uint32_t return_value; asm volatile("lwz %0, 44(1)" : "=r"(return_value)); PUSH(return_value); } Then to make this function available from forth we add this line to the end of the arch_of_init() function in the same file: bind_func("fpscr@", get_fpscr); To build this example you would have to issue this command: ./config/scripts/switch-arch ppc && make build-verbose The resulting file can be used with QEMU like this: qemu-system-ppc -bios <path to openbios folder>/obj-ppc/openbios-qemu.elf.nostrip Entering fpscr@ in the OpenBIOS prompt would return the value to the fpscr. 55cd77d9234a286d4e1a3740cf916fdde4b0c9b6 MediaWiki:Sidebar 8 7 461 75 2018-01-18T08:03:08Z Mark 16 wikitext text/x-wiki * About the Project ** mainpage|mainpage ** Contact us|Contact us ** Mailinglist|Mailinglist ** Code of Conduct|Code of Conduct ** Credits|Credits ** Licensing|Licensing * Implementations ** Open Firmware|Open Firmware ** SmartFirmware|Smart Firmware ** OpenBOOT|OpenBOOT ** OpenBIOS|OpenBIOS ** SLOF|SLOF * Development ** FCODE suite|FCODE suite ** BeginAgain|Kernel ** FlashRom|Flashing ** https://github.com/openbios/openbios/issues|Issues/Bugs ** Low Level Firmware * Documentation ** IEEE 1275-1994|Open Firmware ** Bindings|Bindings and Supplements ** Forth/FCode|Forth/FCode ** On the Net|On the Net * Wiki ** recentchanges-url|recentchanges 131bbb20318fcd40d0b3371b4cfe4ffde1707e0e User:PatrickGeorgi 2 51 462 2018-01-18T09:40:04Z PatrickGeorgi 18 Created page with "One of the original authors of the OpenBIOS kernel, then moved to coreboot. Admin of the openbios.org server." wikitext text/x-wiki One of the original authors of the OpenBIOS kernel, then moved to coreboot. Admin of the openbios.org server. 793a522b7b2d5a9f04337e8959903d02a12ac728 Open Firmware 0 33 463 381 2018-12-09T15:53:48Z Mark 16 wikitext text/x-wiki == Introduction == In 2006 the company of Open Firmware inventor Mitch Bradley, [http://firmworks.com/ Firmworks, Inc], released their Open Firmware implementation (OFW) under a BSD license. This code shares some code with SUN's OpenBOOT implementation. The open source OFW supports x86, PowerPC, and ARM architectures. Other architectures, including SPARC and MIPS, may be added as time and interest dictate. The x86 version is used on the OLPC "XO" computer. The x86 version can be configured for numerous other environments, including * Direct QEMU ROM (replacing the "bios.bin" that is supplied with QEMU * Coreboot payload * Loadable on directly on top of a conventional PC BIOS (booted from floppy or hard disk like an OS). In this configuration it can run on an arbitrary PC, or on an emulator like QEMU, VirtualBox, or VMWare. OFW can boot Linux directly from a disk file (FAT, ext2, ISO9660, or jffs2 filesystems) without the need for an intermediate bootloader like LILO or GRUB. The Linux image can be in either ELF format (as created by the first phase of the Linux kernel compilation process) or in the "bzImage" format that "wraps" the ELF image. When booting an ELF image, OFW can read the ELF symbol table so OFW's assembly language debugger can resolve kernel symbols. OFW can also boot other ELF standalone images, providing to them rudimentary "libc" capability. That facility has been used for booting, for example, Minix, ReactOS, Plan9, Inferno and SqueakNOS. The OLPC system ROM includes several such "standalone client programs", including MicroEMACS, memtest86, and NANDblaster (a facility for fast OS updates over multicast wireless). On the OLPC system, OFW emulates enough legacy BIOS "real mode INTs" to boot Windows XP. On another system, OFW supports booting Windows CE. == Download == You can [https://github.com/openbios/openfirmware browse the source code online]. The repository is available through git: You can check it out as follows: $ git checkout https://github.com/openbios/openfirmware.git ==Building Different Versions== * Direct QEMU ROM: see [[Building OFW for QEMU]] * Coreboot: see [[OFW as a Coreboot Payload]] * OLPC: see [[Building OFW for OLPC]] * BIOS-loaded: see [[Building OFW to Load from BIOS]] * ARM: see [[Building OFW for ARM]] == Mailing List == There's an Open Firmware mailing list at: * http://www.openfirmware.info/mailman/listinfo/openfirmware. The mailing list archive is also available: * http://www.openfirmware.info/pipermail/openfirmware/ 8c66343faf65b2c5905d0c4a25ef3d059989882d SmartFirmware 0 31 464 359 2018-12-09T15:56:01Z Mark 16 wikitext text/x-wiki == Introduction == In 2006 [http://codegen.com/ CodeGen, Inc] released their Open Firmware implementation under a BSL like license. Their code, entirely written in ANSI C, contains the following components: * [http://www.codegen.com/SmartFirmware/index.html SmartFirmware™]: an ANSI C implementation of the IEEE-1275 Open Firmware boot firmware standard. Dramatically reduce and ease your firmware development and system bring-up times and costs. * An [http://www.codegen.com/SmartFirmware/ccfcode.html ANSI C compiler] that generates Open Firmware compatible Forth/Fcode makes it easy to develop drivers for PCI cards and PMC modules. == Download == You can [https://github.com/openbios/smartfirmware browse the code online]. The repository is available through git: You can check it out as follows: $ git checkout https://github.com/openbios/smartfirmware.git __NOEDITSECTION__ 95dcb8644dc750bdfdc0e1b6f753f42151428024 OpenBOOT 0 32 465 364 2018-12-09T15:57:42Z Mark 16 wikitext text/x-wiki == Introduction == In 2006 [http://sun.com/ Sun Microsystems] released their Open Firmware implementation OpenBoot under a BSL like license. Their code supports the sun4v architecture running on a hypervisor. == Download == You can [https://github.com/openbios/openboot browse the source code online]. The repository is available through git: You can check it out as follows: $ git checkout https://github.com/openbios/openboot.git __NOEDITSECTION__ 1b165da285c80c46b81eff71b172ff83141d87a9